apollo_developers/bower_components/jsPDF/tests/pages/display-mode.spec.js
venbatechnologies@gmail.com 1809bcf9c9 fixed table for student details
2018-04-23 18:34:11 +05:30

178 lines
4.9 KiB
JavaScript
Executable File

'use strict'
/* global describe, it, jsPDF, comparePdf, expect */
/**
* Standard spec tests
*
* These tests return the datauristring so that reference files can be generated.
* We compare the exact output.
*/
describe('Display modes', () => {
it('should set zoom mode to full height', () => {
const doc = jsPDF()
doc.setDisplayMode('fullheight')
doc.text(10, 10, 'This is a test')
doc.output()
comparePdf(doc.output(), 'zoom-full-height.pdf', 'pages')
})
it('should set zoom mode to full width', () => {
const doc = jsPDF()
doc.setDisplayMode('fullwidth')
doc.text(10, 10, 'This is a test')
doc.output()
comparePdf(doc.output(), 'zoom-full-width.pdf', 'pages')
})
it('should set zoom mode to full page', () => {
const doc = jsPDF('landscape')
doc.setDisplayMode('fullpage')
doc.text(10, 10, 'This is a test')
doc.output()
comparePdf(doc.output(), 'zoom-full-page.pdf', 'pages')
})
it('should set zoom mode to original', () => {
const doc = jsPDF('landscape')
doc.setDisplayMode('original')
doc.text(10, 10, 'This is a test')
doc.output()
comparePdf(doc.output(), 'zoom-original.pdf', 'pages')
})
it('should set zoom mode to 2x', () => {
const doc = jsPDF('landscape')
doc.setDisplayMode(2)
doc.text(20, 20, 'This is a test')
doc.output()
comparePdf(doc.output(), 'zoom-2x.pdf', 'pages')
})
it('should set zoom mode to 3x', () => {
const doc = jsPDF('landscape')
doc.setDisplayMode(3)
doc.text(20, 20, 'This is a test')
doc.output()
comparePdf(doc.output(), 'zoom-3x.pdf', 'pages')
})
it('should set zoom mode to 3x', () => {
const doc = jsPDF('landscape')
doc.setDisplayMode('300%')
doc.text(20, 20, 'This is a test')
doc.output()
comparePdf(doc.output(), 'zoom-3x.pdf', 'pages')
})
it('should display in continuous mode', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, 'continuous')
comparePdf(doc.output(), 'continuous.pdf', 'pages')
})
it('should display in single page mode', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, 'single')
comparePdf(doc.output(), 'single.pdf', 'pages')
})
it('should display in two column left mode', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, 'twoleft')
comparePdf(doc.output(), 'twoleft.pdf', 'pages')
})
it('should display in two column left mode with shorter syntax', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, 'two')
comparePdf(doc.output(), 'twoleft.pdf', 'pages')
})
it('should display in two column right mode', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, 'tworight')
comparePdf(doc.output(), 'tworight.pdf', 'pages')
})
it('should use outline display mode', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, null, 'UseOutlines')
comparePdf(doc.output(), 'outlines.pdf', 'pages')
})
it('should use thumbnail display mode', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, null, 'UseThumbs')
comparePdf(doc.output(), 'thumbs.pdf', 'pages')
})
it('should use fullscreen display mode', () => {
const doc = jsPDF()
doc.text(10, 10, 'Page 1')
doc.addPage()
doc.text(10, 10, 'Page 2')
doc.addPage()
doc.text(10, 10, 'Page 3')
doc.addPage()
doc.text(10, 10, 'Page 4')
doc.setDisplayMode(null, null, 'FullScreen')
comparePdf(doc.output(), 'fullscreen.pdf', 'pages')
})
it('should throw an error for invalid page modes', () => {
const doc = jsPDF()
expect(() => {
doc.setDisplayMode(null, null, 'MadeUp')
}).toThrow(new Error(`Page mode must be one of UseNone, UseOutlines, UseThumbs, or FullScreen. "MadeUp" is not recognized.`))
})
})