npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated npm WARN deprecated mkdirp@0.5.4: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.) npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies. npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.) npm WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen) npm WARN deprecated highlight.js@9.18.5: Support has ended for 9.x series. Upgrade to @latest npm WARN deprecated core-js@2.6.9: core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js. > postinstall > cross-env PUPPETEER_PRODUCT=firefox node node_modules/puppeteer/install.mjs Firefox Nightly (nightly_127.0a1) downloaded to C:\Users\Administrator\.cache\puppeteer\firefox\win64-nightly_127.0a1 added 1387 packages, and audited 1845 packages in 60s 188 packages are looking for funding run `npm fund` for details 38 vulnerabilities (15 moderate, 23 high) To address issues that do not require attention, run: npm audit fix To address all issues (including breaking changes), run: npm audit fix --force Run `npm audit` for details. >> Deploying cached PDF files >> Getting ref snapshots >> Deploying custom files >> Running tests [20:05:15] Using gulpfile C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\gulpfile.mjs [20:05:15] Starting 'bottest'... [20:05:15] Starting 'setTestEnv'... [20:05:15] Finished 'setTestEnv' after 1.19 ms [20:05:15] Starting 'generic'... [20:05:15] Starting 'createBuildNumber'... ### Getting extension build number Extension build number: 13 [20:05:15] Finished 'createBuildNumber' after 181 ms [20:05:15] Starting 'locale'... ### Building localization files [20:05:16] Finished 'locale' after 358 ms [20:05:16] Starting 'scriptingGeneric'... ### Building default preferences [20:05:17] asset app_options.mjs 10.5 KiB [emitted] [javascript module] (name: main) webpack 5.91.0 compiled successfully [20:05:18] asset pdf.scripting.mjs 103 KiB [emitted] [javascript module] (name: main) webpack 5.91.0 compiled successfully [20:05:18] Finished 'scriptingGeneric' after 2.61 s [20:05:18] Starting 'prefsGeneric'... ### Parsing default preferences [20:05:18] Finished 'prefsGeneric' after 6.73 ms [20:05:18] Starting 'createGeneric'... ### Creating generic viewer [BABEL] Note: The code generator has deoptimised the styling of C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\external\quickjs\quickjs-eval.js as it exceeds the max of 500KB. [20:05:26] asset pdf.sandbox.mjs 709 KiB [emitted] [javascript module] [big] (name: main) webpack 5.91.0 compiled successfully [20:05:30] asset pdf.mjs 626 KiB [emitted] [javascript module] [big] (name: main) webpack 5.91.0 compiled successfully [20:05:33] asset pdf.worker.mjs 2.05 MiB [emitted] [javascript module] [big] (name: main) webpack 5.91.0 compiled successfully [20:05:33] asset viewer.mjs 509 KiB [emitted] [javascript module] [big] (name: main) webpack 5.91.0 compiled successfully [20:05:34] Finished 'createGeneric' after 15 s [20:05:34] Finished 'generic' after 19 s [20:05:34] Starting 'components'... [20:05:34] Starting 'createBuildNumber'... ### Getting extension build number Extension build number: 13 [20:05:34] Finished 'createBuildNumber' after 102 ms [20:05:34] Starting 'createComponents'... ### Creating generic components [20:05:35] asset pdf_viewer.mjs 278 KiB [emitted] [javascript module] [big] (name: main) webpack 5.91.0 compiled successfully [20:05:35] Finished 'createComponents' after 1.5 s [20:05:35] Finished 'components' after 1.6 s [20:05:35] Starting 'runBotTest'... ### Running unit tests Server running at http://127.0.0.1:64929/ Started 1004 tests for firefox with seed 89926. TEST-PASSED | handles non-array arguments | in firefox TEST-PASSED | handles array arguments with a length not exceeding the maximum | in firefox TEST-PASSED | handles array arguments with a length exceeding the maximum | in firefox TEST-PASSED | handles incomplete UTF-16 little-endian strings | in firefox TEST-PASSED | handles UTF-16 big-endian strings | in firefox TEST-PASSED | handles ISO Latin 1 strings | in firefox TEST-PASSED | handles UTF-16 little-endian strings | in firefox TEST-PASSED | handles incomplete UTF-16 big-endian strings | in firefox TEST-PASSED | handles strings with language code | in firefox TEST-PASSED | handles empty strings | in firefox TEST-PASSED | handles UTF-8 strings | in firefox TEST-PASSED | handles string arguments | in firefox TEST-PASSED | handles non-string arguments | in firefox TEST-PASSED | converts unsigned 32-bit integers to strings | in firefox TEST-PASSED | should get a correctly formatted date | in firefox TEST-PASSED | handles URLs that do not use an allowed protocol | in firefox TEST-PASSED | handles invalid URLs | in firefox TEST-PASSED | correctly creates a valid URL for allowed protocols | in firefox TEST-PASSED | should have property getReader | in firefox TEST-PASSED | should return an Object | in firefox TEST-PASSED | should have property `href` | in firefox TEST-PASSED | should return an Object | in firefox TEST-PASSED | should lex identifiers | in firefox TEST-PASSED | should skip comments | in firefox TEST-PASSED | should lex strings | in firefox TEST-PASSED | should lex numbers | in firefox TEST-PASSED | should lex operators | in firefox TEST-PASSED | should parse foreach declaration | in firefox TEST-PASSED | should parse if declaration | in firefox TEST-PASSED | should parse func declaration with error | in firefox TEST-PASSED | should parse do declaration with error | in firefox TEST-PASSED | should parse do declaration | in firefox TEST-PASSED | should parse for declaration with a step | in firefox TEST-PASSED | should parse basic expression with a string | in firefox TEST-PASSED | should parse for declaration without a step | in firefox TEST-PASSED | should parse for declaration with error | in firefox TEST-PASSED | should parse basic arithmetic expression | in firefox TEST-PASSED | should parse var declaration with error | in firefox TEST-PASSED | should parse som predicate | in firefox TEST-PASSED | should parse basic expression with dots | in firefox TEST-PASSED | should parse foreach declaration with error | in firefox TEST-PASSED | should parse if declaration with error | in firefox TEST-PASSED | should parse expressions with unary operators | in firefox TEST-PASSED | should parse while declaration | in firefox TEST-PASSED | should parse basic arithmetic expression with the same operator | in firefox TEST-PASSED | should parse while declaration with error | in firefox TEST-PASSED | should parse func declaration | in firefox TEST-PASSED | should parse basic expression with a subscript | in firefox TEST-PASSED | should parse basic expression with a calls | in firefox TEST-PASSED | should decode simple predictor data | in firefox TEST-PASSED | should accept equal destination hashes | in firefox TEST-PASSED | should reject non-equal destination hashes | in firefox TEST-PASSED | should reject non-equal destination arrays | in firefox TEST-PASSED | should accept equal destination arrays | in firefox TEST-PASSED | should generate a file encryption key from the owner key | in firefox TEST-PASSED | should generate a file encryption key from the user key | in firefox TEST-PASSED | should correctly check a user key | in firefox TEST-PASSED | should correctly check an owner key | in firefox TEST-PASSED | should be able to encrypt a block | in firefox TEST-PASSED | should be able to decrypt a block with IV in stream | in firefox TEST-PASSED | should be able to decrypt a block with specified iv | in firefox TEST-PASSED | should pass test #5 | in firefox TEST-PASSED | should pass test #6 | in firefox TEST-PASSED | should pass test #1 | in firefox TEST-PASSED | should pass test #3 | in firefox TEST-PASSED | should pass test #7 | in firefox TEST-PASSED | should pass test #4 | in firefox TEST-PASSED | should pass test #2 | in firefox TEST-PASSED | should be able to decrypt a block with IV in stream | in firefox TEST-PASSED | should be able to encrypt a block | in firefox TEST-PASSED | should pass RFC 1321 test #5 | in firefox TEST-PASSED | should pass RFC 1321 test #6 | in firefox TEST-PASSED | should pass RFC 1321 test #1 | in firefox TEST-PASSED | should pass RFC 1321 test #2 | in firefox TEST-PASSED | should pass RFC 1321 test #3 | in firefox TEST-PASSED | should pass RFC 1321 test #4 | in firefox TEST-PASSED | should pass RFC 1321 test #7 | in firefox TEST-PASSED | should properly hash a multiblock input | in firefox TEST-PASSED | should properly hash abc | in firefox TEST-PASSED | should correctly check a user key | in firefox TEST-PASSED | should correctly check an owner key | in firefox TEST-PASSED | should generate a file encryption key from the user key | in firefox TEST-PASSED | should generate a file encryption key from the owner key | in firefox TEST-PASSED | should properly hash a multiblock input | in firefox TEST-PASSED | should properly hash abc | in firefox TEST-PASSED | should properly hash abc | in firefox TEST-PASSED | should properly hash a multiblock input | in firefox TEST-PASSED | should handle Names with invalid usage of NUMBER SIGN (#) | in firefox TEST-PASSED | should stop immediately when the start of a command is a non-visible ASCII character (issue 13999) | in firefox TEST-PASSED | should ignore minus signs in the middle of number | in firefox TEST-PASSED | should ignore double negative before number | in firefox TEST-PASSED | should parse PostScript numbers | in firefox TEST-PASSED | should stop parsing numbers at the end of stream | in firefox TEST-PASSED | should handle glued numbers and operators | in firefox TEST-PASSED | should ignore line-breaks between operator and digit in number | in firefox TEST-PASSED | should treat a single decimal point, or minus/plus sign, as zero | in firefox TEST-PASSED | should stop parsing strings at the end of stream | in firefox TEST-PASSED | should ignore escaped CR and LF | in firefox TEST-PASSED | should not throw exception on bad input | in firefox TEST-PASSED | should return and set -1 when the end of the stream is reached | in firefox TEST-PASSED | should return and set the character after the current position | in firefox TEST-PASSED | should only return -1 when the end of the stream is reached | in firefox TEST-PASSED | should only return the character after the current position | in firefox TEST-PASSED | should skip to the end of stream if the EI marker is not found | in firefox TEST-PASSED | should skip over the EI marker if it is found | in firefox TEST-PASSED | should reject a linearization dictionary with invalid hint parameters | in firefox TEST-PASSED | should reject a linearization dictionary with invalid integer parameters | in firefox TEST-PASSED | should accept a valid linearization dictionary | in firefox TEST-PASSED | should not find a linearization dictionary | in firefox TEST-PASSED | should gracefully handle incomplete tags (issue 8884) | in firefox TEST-PASSED | should gracefully handle "junk" before the actual metadata (issue 10395) | in firefox TEST-PASSED | should repair and handle invalid metadata | in firefox TEST-PASSED | should repair and handle invalid metadata (bug 1424938) | in firefox TEST-PASSED | should not be vulnerable to the billion laughs attack | in firefox TEST-PASSED | should correctly handle metadata containing "&apos" (issue 10407) | in firefox TEST-PASSED | should gracefully handle unbalanced end tags (issue 10410) | in firefox TEST-PASSED | should handle valid metadata | in firefox TEST-PASSED | generates correct hashes for TypedArrays which share the same underlying ArrayBuffer (issue 12533) | in firefox TEST-PASSED | correctly generates a hash from a string | in firefox TEST-PASSED | instantiates with seed | in firefox TEST-PASSED | correctly generates a hash from a Uint32Array | in firefox TEST-PASSED | correctly generates a hash from a Uint8Array | in firefox TEST-PASSED | instantiates without seed | in firefox TEST-PASSED | changes the hash after update with seed | in firefox TEST-PASSED | changes the hash after update without seed | in firefox TEST-PASSED | gets expected character types | in firefox TEST-PASSED | should parse processing instructions | in firefox TEST-PASSED | should search a node with a given path in xml tree | in firefox TEST-PASSED | should dump a xml tree | in firefox TEST-PASSED | should parse and create default appearance | in firefox TEST-PASSED | should parse default appearance with save/restore | in firefox TEST-PASSED | should parse a FreeText (from Firefox) appearance | in firefox TEST-PASSED | should parse a FreeText (from Preview) appearance | in firefox TEST-PASSED | should parse a FreeText (from Foxit) appearance | in firefox TEST-PASSED | should parse a FreeText (from Edge) appearance | in firefox TEST-PASSED | should parse a FreeText (from Okular) appearance | in firefox TEST-PASSED | should parse a FreeText (from Acrobat) appearance | in firefox TEST-PASSED | should convert Gray color for different color spaces | in firefox TEST-PASSED | should convert Transparent color for different color spaces | in firefox TEST-PASSED | should convert RGB color for different color spaces | in firefox TEST-PASSED | should convert CMYK color for different color spaces | in firefox TEST-PASSED | should format a number | in firefox TEST-PASSED | should extract numbers | in firefox TEST-PASSED | should validate a US phone number (short) on a keystroke event | in firefox TEST-PASSED | should validate a zip code on a keystroke event | in firefox TEST-PASSED | should validate a US phone number (long) on a keystroke event | in firefox TEST-PASSED | should convert string to number | in firefox TEST-PASSED | should validate an e-mail address | in firefox TEST-PASSED | should not validate a number on a keystroke event | in firefox TEST-PASSED | should validate a number on a keystroke event | in firefox TEST-PASSED | should split a string into an array of strings | in firefox TEST-PASSED | should check matching between regexs and a string | in firefox TEST-PASSED | should format a date | in firefox TEST-PASSED | should format a date (cFormat) | in firefox TEST-PASSED | should compute the sum of several fields in fields tree | in firefox TEST-PASSED | should compute the sum of several fields | in firefox TEST-PASSED | should validate a phone number on a keystroke event | in firefox TEST-PASSED | should parse a date with a format | in firefox TEST-PASSED | should invalidate a number out of range [a, b] | in firefox TEST-PASSED | should validate a number in range [a, b] | in firefox TEST-PASSED | should format a percentage | in firefox TEST-PASSED | should test language | in firefox TEST-PASSED | should test platform | in firefox TEST-PASSED | should trigger an invalid commit Keystroke event | in firefox TEST-PASSED | should trigger a valid commit Keystroke event | in firefox TEST-PASSED | should trigger a Keystroke event and change it | in firefox Started 1004 tests for chrome with seed 11029. TEST-PASSED | should trigger a Keystroke event and invalidate it | in firefox TEST-PASSED | should trigger an event and modify the source | in firefox TEST-PASSED | should send a value, execute an action and get back a new value | in firefox TEST-PASSED | should treat globalThis as the doc | in firefox TEST-PASSED | should get field using a path | in firefox TEST-PASSED | should parse a date according to a format | in firefox TEST-PASSED | should print some data according to a format | in firefox TEST-PASSED | should print a string with no argument | in firefox TEST-PASSED | print a string with a percent | in firefox TEST-PASSED | should print some data according to a format | in firefox TEST-PASSED | should print a date according to a format | in firefox TEST-PASSED | compiles fdselect format 0 | in firefox TEST-PASSED | sanitizes name index | in firefox TEST-PASSED | encodes floats | in firefox TEST-PASSED | encodes integers | in firefox TEST-PASSED | compiles charset of non CID font | in firefox TEST-PASSED | compiles charset of CID font | in firefox TEST-PASSED | compiles fdselect format 3, single range | in firefox TEST-PASSED | compiles fdselect format 3 | in firefox TEST-PASSED | should create correct objId/fontId using the idFactory | in firefox TEST-PASSED | should check if fields have any actions | in firefox TEST-PASSED | should get field objects array or null | in firefox TEST-PASSED | should get form info when AcroForm is present | in firefox TEST-PASSED | should get calculation order array or null | in firefox TEST-PASSED | should get form info when XFA is present | in firefox TEST-PASSED | should get form info when no form data is present | in firefox TEST-PASSED | decodes codespace ranges | in firefox TEST-PASSED | parses begincidrange | in firefox TEST-PASSED | read usecmap | in firefox TEST-PASSED | decodes 4 byte codespace ranges | in firefox TEST-PASSED | parses wmode | in firefox TEST-PASSED | parses cmapname | in firefox TEST-PASSED | loads built in identity cmap | in firefox TEST-PASSED | loads built in cmap | in firefox TEST-PASSED | parses beginbfchar | in firefox TEST-PASSED | attempts to load a non-existent built-in CMap | in firefox TEST-PASSED | parses beginbfrange with array | in firefox TEST-PASSED | attempts to load a built-in CMap without the necessary API parameters | in firefox TEST-PASSED | parses beginbfrange with range | in firefox TEST-PASSED | parses begincidchar | in firefox TEST-PASSED | attempts to load a built-in CMap with inconsistent API parameters | in firefox TEST-PASSED | should not read any data when cancelled | in firefox TEST-PASSED | should read data with blocking promise | in firefox TEST-PASSED | should read using a reader | in firefox TEST-PASSED | should not read when errored | in firefox TEST-PASSED | should return a ReadableStream | in firefox TEST-PASSED | should read data with blocking promise and buffer whole data into stream | in firefox TEST-PASSED | should ignore any pull after close is called | in firefox TEST-PASSED | parses a CharString endchar with 4 args w/seac disabled | in firefox TEST-PASSED | parses a CharString endchar no args | in firefox TEST-PASSED | parses header | in firefox TEST-PASSED | parses predefined charsets | in firefox TEST-PASSED | parses charset format 0 | in firefox TEST-PASSED | parses string index | in firefox TEST-PASSED | parses charset format 1 | in firefox TEST-PASSED | parses name index | in firefox TEST-PASSED | parses encoding format 0 | in firefox TEST-PASSED | refuses to add topDict key with invalid value (bug 1068432) | in firefox TEST-PASSED | parses charset format 2 | in firefox TEST-PASSED | parses encoding format 1 | in firefox TEST-PASSED | parses top dict | in firefox TEST-PASSED | parses fdselect format 0 | in firefox TEST-PASSED | parses a CharString having cntrmask | in firefox TEST-PASSED | ignores reserved commands in parseDict, and refuses to add privateDict keys with invalid values (bug 1308536) | in firefox TEST-PASSED | parses fdselect format 3 | in firefox TEST-PASSED | parses a CharString endchar with 4 args w/seac enabled | in firefox TEST-PASSED | parses invalid fdselect format 3 (bug 1146106) | in firefox TEST-PASSED | should have an input or textarea | in firefox TEST-PASSED | should parse URLs correctly | in firefox TEST-PASSED | should replace button with an URL by a link | in firefox TEST-PASSED | should have an alt attribute from toolTip | in firefox TEST-PASSED | should have a aria heading role and level | in firefox TEST-PASSED | should convert some basic properties to CSS | in firefox TEST-PASSED | should have an aria-label property from toolTip | in firefox TEST-PASSED | should have an input or textarea | in firefox TEST-PASSED | should have an aria-label property from speak | in firefox TEST-PASSED | should have aria table role | in firefox TEST-PASSED | should have a maxLength property | in firefox TEST-PASSED | caching by Ref | in firefox TEST-PASSED | caching by Name | in firefox TEST-PASSED | should handle the case when cs is an array | in firefox TEST-PASSED | should handle the case when cs is an array | in firefox TEST-PASSED | should handle the case when cs is an array | in firefox TEST-PASSED | should treat globalThis as the doc | in chrome TEST-PASSED | should get field using a path | in chrome TEST-PASSED | should send a value, execute an action and get back a new value | in chrome TEST-PASSED | should print some data according to a format | in chrome TEST-PASSED | should print some data according to a format | in chrome TEST-PASSED | print a string with a percent | in chrome TEST-PASSED | should print a string with no argument | in chrome TEST-PASSED | should parse a date according to a format | in chrome TEST-PASSED | should print a date according to a format | in chrome TEST-PASSED | should trigger a Keystroke event and invalidate it | in chrome TEST-PASSED | should trigger a valid commit Keystroke event | in chrome TEST-PASSED | should trigger a Keystroke event and change it | in chrome TEST-PASSED | should trigger an event and modify the source | in chrome TEST-PASSED | should trigger an invalid commit Keystroke event | in chrome TEST-PASSED | should parse a date with a format | in chrome TEST-PASSED | should extract numbers | in chrome TEST-PASSED | should convert string to number | in chrome TEST-PASSED | should split a string into an array of strings | in chrome TEST-PASSED | should validate an e-mail address | in chrome TEST-PASSED | should check matching between regexs and a string | in chrome TEST-PASSED | should format a percentage | in chrome TEST-PASSED | should compute the sum of several fields | in chrome TEST-PASSED | should compute the sum of several fields in fields tree | in chrome TEST-PASSED | should validate a zip code on a keystroke event | in chrome TEST-PASSED | should validate a US phone number (long) on a keystroke event | in chrome TEST-PASSED | should validate a US phone number (short) on a keystroke event | in chrome TEST-PASSED | should invalidate a number out of range [a, b] | in chrome TEST-PASSED | should validate a number in range [a, b] | in chrome TEST-PASSED | should format a date (cFormat) | in chrome TEST-PASSED | should format a date | in chrome TEST-PASSED | should validate a phone number on a keystroke event | in chrome TEST-PASSED | should validate a number on a keystroke event | in chrome TEST-PASSED | should not validate a number on a keystroke event | in chrome TEST-PASSED | should format a number | in chrome TEST-PASSED | should test language | in chrome TEST-PASSED | should test platform | in chrome TEST-PASSED | should convert Transparent color for different color spaces | in chrome TEST-PASSED | should convert CMYK color for different color spaces | in chrome TEST-PASSED | should convert Gray color for different color spaces | in chrome TEST-PASSED | should convert RGB color for different color spaces | in chrome TEST-PASSED | parses fdselect format 0 | in chrome TEST-PASSED | parses charset format 2 | in chrome TEST-PASSED | parses charset format 1 | in chrome TEST-PASSED | parses charset format 0 | in chrome TEST-PASSED | parses fdselect format 3 | in chrome TEST-PASSED | parses predefined charsets | in chrome TEST-PASSED | ignores reserved commands in parseDict, and refuses to add privateDict keys with invalid values (bug 1308536) | in chrome TEST-PASSED | parses encoding format 0 | in chrome TEST-PASSED | parses a CharString endchar no args | in chrome TEST-PASSED | parses a CharString endchar with 4 args w/seac disabled | in chrome TEST-PASSED | parses a CharString endchar with 4 args w/seac enabled | in chrome TEST-PASSED | parses invalid fdselect format 3 (bug 1146106) | in chrome TEST-PASSED | parses name index | in chrome TEST-PASSED | parses a CharString having cntrmask | in chrome TEST-PASSED | parses top dict | in chrome TEST-PASSED | parses header | in chrome TEST-PASSED | parses string index | in chrome TEST-PASSED | refuses to add topDict key with invalid value (bug 1068432) | in chrome TEST-PASSED | parses encoding format 1 | in chrome TEST-PASSED | encodes integers | in chrome TEST-PASSED | sanitizes name index | in chrome TEST-PASSED | compiles fdselect format 3, single range | in chrome TEST-PASSED | encodes floats | in chrome TEST-PASSED | compiles fdselect format 3 | in chrome TEST-PASSED | compiles fdselect format 0 | in chrome TEST-PASSED | compiles charset of CID font | in chrome TEST-PASSED | compiles charset of non CID font | in chrome TEST-PASSED | should handle the case when cs is an array | in firefox TEST-PASSED | should handle the case when cs is an indirect object | in firefox TEST-PASSED | should handle the case when cs is a Name object | in firefox TEST-PASSED | should handle the case when cs is an array | in firefox TEST-PASSED | should handle the case when cs is a Name object | in firefox TEST-PASSED | should handle the case when cs is an indirect object | in firefox TEST-PASSED | should handle the case when cs is a Name object | in firefox TEST-PASSED | should handle the case when cs is an indirect object | in firefox TEST-PASSED | should be true if length of decode array is not correct | in firefox TEST-PASSED | should be true if decode map matches the default decode map | in firefox TEST-PASSED | should be true if decode is not an array | in firefox TEST-PASSED | should serialize data with an annotationStorage | in firefox TEST-PASSED | renders to canvas with a default white background | in firefox TEST-PASSED | renders to canvas with a custom background | in firefox TEST-PASSED | fetches a valid array for known encoding names | in firefox TEST-PASSED | fetches `null` for unknown encoding names | in firefox TEST-PASSED | should substitute an unknown font but with a standard italic font | in firefox TEST-PASSED | should substitute an unknown font but with a standard bold italic font | in firefox TEST-PASSED | should substitute Calibri | in firefox TEST-PASSED | should substitute an unknown font but with a standard bold font | in firefox TEST-PASSED | should substitute an unknown font but with a standard font | in firefox TEST-PASSED | should substitute an unknown bold italic font | in firefox TEST-PASSED | should substitute Arial Black Bold | in firefox TEST-PASSED | should substitute Calibri-Bold | in firefox TEST-PASSED | should substitute Arial Black | in firefox TEST-PASSED | should substitute an unknown font | in firefox TEST-PASSED | should substitute an unknown font subset | in firefox TEST-PASSED | should substitute an unknown italic font | in firefox TEST-PASSED | should substitute an unknown bold font | in firefox TEST-PASSED | should use given document for loading fonts (with Font Loading API) | in chrome TEST-PASSED | creates textLayer from ReadableStream | in firefox TEST-PASSED | should use given document for loading fonts (with CSS rules) | in chrome TEST-PASSED | should substitute an unknown italic font | in chrome TEST-PASSED | should substitute Calibri-Bold | in chrome TEST-PASSED | should substitute an unknown font subset | in chrome TEST-PASSED | should substitute an unknown font but with a standard bold italic font | in chrome TEST-PASSED | should substitute an unknown font | in chrome TEST-PASSED | should substitute Arial Black | in chrome TEST-PASSED | should substitute Calibri | in chrome TEST-PASSED | should substitute an unknown font but with a standard bold font | in chrome TEST-PASSED | should substitute Arial Black Bold | in chrome TEST-PASSED | should substitute an unknown font but with a standard italic font | in chrome TEST-PASSED | should substitute an unknown font but with a standard font | in chrome TEST-PASSED | should substitute an unknown bold italic font | in chrome TEST-PASSED | should substitute an unknown bold font | in chrome TEST-PASSED | should correctly determine the character category | in chrome TEST-PASSED | should not re-map normal Unicode values | in chrome TEST-PASSED | should re-map special Unicode values | in chrome TEST-PASSED | should recover Unicode values from uniXXXX/uXXXX{XX} glyph names | in chrome TEST-PASSED | should not get Unicode values for invalid glyph names | in chrome TEST-PASSED | should get Unicode values for valid glyph names | in chrome TEST-PASSED | should get correct Unicode range | in chrome TEST-PASSED | should not get a Unicode range | in chrome TEST-PASSED | gets page size (in inches) | in chrome TEST-PASSED | gets page size (in inches), for non-default /Rotate entry | in chrome TEST-PASSED | handles case 4 | in chrome TEST-PASSED | handles case 3 | in chrome TEST-PASSED | handles case 2 | in chrome TEST-PASSED | handles case 1 | in chrome TEST-PASSED | with pages of varying height | in chrome TEST-PASSED | widescreen challenge | in chrome TEST-PASSED | handles views being empty | in chrome TEST-PASSED | handles `sortByVisibility` correctly | in chrome TEST-PASSED | works with horizontal scrolling with RTL-documents | in chrome TEST-PASSED | works with horizontal scrolling | in chrome TEST-PASSED | handles all views being hidden (without errors) | in chrome TEST-PASSED | should parse one key/value pair | in chrome TEST-PASSED | should parse multiple key/value pairs | in chrome TEST-PASSED | should convert keys to lowercase | in chrome TEST-PASSED | should parse keys without values | in chrome TEST-PASSED | should decode encoded key/value pairs | in chrome TEST-PASSED | single boolean entry | in chrome TEST-PASSED | three numeric entries | in chrome TEST-PASSED | three numeric entries and a start index | in chrome TEST-PASSED | three boolean entries | in chrome TEST-PASSED | empty array | in chrome TEST-PASSED | should modify string with non-displayable characters | in chrome TEST-PASSED | should not modify string without null characters | in chrome TEST-PASSED | should modify string with null characters | in chrome TEST-PASSED | should be landscape orientation | in chrome TEST-PASSED | should be portrait orientation | in chrome TEST-PASSED | should reject non-integer angles | in chrome TEST-PASSED | should accept valid angles | in chrome TEST-PASSED | should reject non-multiple of 90 degree angles | in chrome TEST-PASSED | should be able to encrypt a block | in chrome TEST-PASSED | should be able to decrypt a block with IV in stream | in chrome TEST-PASSED | should pass test #5 | in chrome TEST-PASSED | should pass test #7 | in chrome TEST-PASSED | should pass test #6 | in chrome TEST-PASSED | should pass test #4 | in chrome TEST-PASSED | should pass test #3 | in chrome TEST-PASSED | should pass test #2 | in chrome TEST-PASSED | should pass test #1 | in chrome TEST-PASSED | should properly hash a multiblock input | in chrome TEST-PASSED | should properly hash abc | in chrome TEST-PASSED | should correctly check an owner key | in chrome TEST-PASSED | should correctly check a user key | in chrome TEST-PASSED | should generate a file encryption key from the user key | in chrome TEST-PASSED | should generate a file encryption key from the owner key | in chrome TEST-PASSED | should accept owner password | in firefox TEST-PASSED | should not accept blank password | in firefox TEST-PASSED | should accept user password | in firefox TEST-PASSED | should accept blank password | in firefox TEST-PASSED | should properly hash abc | in chrome TEST-PASSED | should properly hash a multiblock input | in chrome TEST-PASSED | should pass RFC 1321 test #2 | in chrome TEST-PASSED | should pass RFC 1321 test #5 | in chrome TEST-PASSED | should pass RFC 1321 test #3 | in chrome TEST-PASSED | should pass RFC 1321 test #4 | in chrome TEST-PASSED | should pass RFC 1321 test #7 | in chrome TEST-PASSED | should pass RFC 1321 test #1 | in chrome TEST-PASSED | should pass RFC 1321 test #6 | in chrome TEST-PASSED | should properly hash a multiblock input | in chrome TEST-PASSED | should properly hash abc | in chrome TEST-PASSED | should be able to decrypt a block with IV in stream | in chrome TEST-PASSED | should be able to decrypt a block with specified iv | in chrome TEST-PASSED | should be able to encrypt a block | in chrome TEST-PASSED | should generate a file encryption key from the owner key | in chrome TEST-PASSED | should generate a file encryption key from the user key | in chrome TEST-PASSED | should correctly check an owner key | in chrome TEST-PASSED | should correctly check a user key | in chrome TEST-PASSED | should accept blank password | in firefox TEST-PASSED | should not accept blank password | in firefox TEST-PASSED | should accept user password | in firefox TEST-PASSED | should not accept wrong password | in firefox TEST-PASSED | should accept owner password | in firefox TEST-PASSED | should accept blank password | in firefox TEST-PASSED | should accept owner password | in firefox TEST-PASSED | should accept user password | in firefox TEST-PASSED | should not accept blank password | in firefox TEST-PASSED | should not accept wrong password | in firefox TEST-PASSED | should not accept wrong password | in firefox TEST-PASSED | should encrypt and have the correct length using AES128 | in firefox TEST-PASSED | should encrypt and have the correct length using AES256 | in firefox TEST-PASSED | should encrypt and decrypt using AES128 | in firefox TEST-PASSED | should encrypt and decrypt using AES256 | in firefox TEST-PASSED | should encrypt and decrypt using ARCFour | in firefox TEST-PASSED | should call onResetModified() if set | in firefox TEST-PASSED | should call onSetModified() if value is changed | in firefox TEST-PASSED | should set a new value in the annotation storage | in firefox TEST-PASSED | should get and set a new value in the annotation storage | in firefox TEST-PASSED | should get set values and default ones in the annotation storage | in firefox TEST-PASSED | should make a binding with a element in an area | in firefox TEST-PASSED | should search some nodes in a datasets object using SOM | in firefox TEST-PASSED | should search some nodes using SOM from a non-root node | in firefox TEST-PASSED | should search some nodes in a template object | in firefox TEST-PASSED | should search some nodes in a datasets object | in firefox TEST-PASSED | should search some nodes in a template object using SOM | in firefox TEST-PASSED | should make binding and create nodes in data with some bind tag | in firefox TEST-PASSED | should make a basic binding and create a non-existing node | in firefox TEST-PASSED | should make a binding with a bindItems | in firefox TEST-PASSED | should make a basic binding | in firefox TEST-PASSED | should make binding with occurrences in consumeData mode | in firefox TEST-PASSED | should make binding with occurrences in matchTemplate mode | in firefox TEST-PASSED | should make binding and bind items with a ref | in firefox TEST-PASSED | should make binding and bind items | in firefox TEST-PASSED | should make binding and set properties | in firefox TEST-PASSED | should make binding and create nodes in data | in firefox TEST-PASSED | should make basic binding with same names in different parts | in firefox TEST-PASSED | should make basic binding with extra subform (consumeData) | in firefox TEST-PASSED | should make basic binding with extra subform | in firefox TEST-PASSED | should make another basic binding | in firefox TEST-PASSED | should make a basic binding and create a non-existing node with namespaceId equal to -1 | in firefox TEST-PASSED | should parse a xfa document and create an object to represent it | in firefox TEST-PASSED | should parse a xfa document and check namespaces | in firefox TEST-PASSED | should parse a xfa document and apply some prototypes with cycle | in firefox TEST-PASSED | should parse a xfa document and parse CDATA when needed | in firefox TEST-PASSED | should parse a xfa document with xhtml | in firefox TEST-PASSED | should parse a xfa document and apply some prototypes | in firefox TEST-PASSED | should parse a xfa document and apply a prototype with content | in firefox TEST-PASSED | should parse a xfa document and apply some prototypes through usehref | in firefox TEST-PASSED | should parse a xfa document and apply some nested prototypes | in firefox TEST-PASSED | performs a search with a dot followed by a whitespace in the query | in firefox TEST-PASSED | performs a normal search, where the text is normalized | in chrome TEST-PASSED | performs an entire word search | in firefox TEST-PASSED | performs a normal search, where the text with diacritics is normalized | in chrome TEST-PASSED | performs a search with a dot in the query and a missing whitespace | in firefox TEST-PASSED | performs a case sensitive search | in firefox TEST-PASSED | performs a normal search and finds the previous result | in chrome TEST-PASSED | performs a multiple term (phrase) search | in firefox TEST-PASSED | performs a search in a text containing diacritics before -\n | in firefox TEST-PASSED | performs a search where the result is on two lines | in chrome TEST-PASSED | performs a multiple term (no phrase) search | in firefox TEST-PASSED | performs a search in a text with some arabic chars in different unicode ranges but with same normalized form | in firefox TEST-PASSED | performs a multiple term (no phrase) search | in chrome TEST-PASSED | performs a search with square brackets in the query | in firefox TEST-PASSED | performs a search in a text with some UTF-32 chars followed by a dash at the end of a line | in firefox TEST-PASSED | performs a search in a text with some UTF-32 chars followed by a dash at the end of a line | in chrome TEST-PASSED | performs a search with a final dot in the query | in firefox TEST-PASSED | performs a search in a text with some f ligatures | in firefox TEST-PASSED | performs a multiple term (phrase) search | in chrome TEST-PASSED | performs a search with parenthesis in the query | in firefox TEST-PASSED | performs a search in a text with some f ligatures | in chrome TEST-PASSED | performs a normal search | in firefox TEST-PASSED | performs a normal search | in chrome TEST-PASSED | performs a search in a text containing combining diacritics | in firefox TEST-PASSED | performs a search with a minus sign in the query | in chrome TEST-PASSED | performs a search with a single diacritic | in firefox TEST-PASSED | performs a search where one of the results contains an hyphen | in chrome TEST-PASSED | performs a search where the result is on two lines with a punctuation at eol | in firefox TEST-PASSED | performs a search in a text with some UTF-32 chars | in firefox TEST-PASSED | performs a search in a text with some arabic chars in different unicode ranges but with same normalized form | in chrome TEST-PASSED | performs a search with a minus sign in the query | in firefox TEST-PASSED | performs a search with a dot followed by a whitespace in the query | in chrome TEST-PASSED | performs a search in a text with some Hiragana diacritics at the end of a line | in firefox TEST-PASSED | performs a normal search and finds the previous result | in firefox TEST-PASSED | performs a search in a text containing fullwidth chars | in chrome TEST-PASSED | performs a normal search, where the text with diacritics is normalized | in firefox TEST-PASSED | performs an entire word search | in chrome TEST-PASSED | performs a search in a text containing an ideographic at the end of a line | in firefox TEST-PASSED | performs a search in a text with some Katakana at the end of a line | in chrome TEST-PASSED | performs a normal search but the total counts is only updated one time | in chrome TEST-PASSED | performs a search with a final dot in the query | in chrome TEST-PASSED | performs a normal search, where the text is normalized | in firefox TEST-PASSED | performs a search in a text containing some Hangul syllables | in firefox TEST-PASSED | performs a search where the result is on two lines | in firefox TEST-PASSED | performs a case sensitive search | in chrome TEST-PASSED | performs a search in a text with some Katakana at the end of a line | in firefox TEST-PASSED | performs a search with a dot in the query and a missing whitespace | in chrome TEST-PASSED | performs a normal search but the total counts is only updated one time | in firefox TEST-PASSED | performs a search in a text containing fullwidth chars | in firefox TEST-PASSED | performs a search in a text containing some Hangul syllables | in chrome TEST-PASSED | performs a search in a text containing an ideographic at the end of a line | in chrome TEST-PASSED | performs a search where one of the results contains an hyphen | in firefox TEST-PASSED | correctly checks if the origin of both URLs matches | in firefox TEST-PASSED | handles invalid base URLs | in firefox TEST-PASSED | performs a search in a text with some Hiragana diacritics at the end of a line | in chrome TEST-PASSED | performs a search in a text containing diacritics before -\n | in chrome TEST-PASSED | performs a search where the result is on two lines with a punctuation at eol | in chrome TEST-PASSED | should correctly render PDFs in parallel | in firefox TEST-PASSED | performs a search in a text with some UTF-32 chars | in chrome TEST-PASSED | should fetch document info and page using ranges | in firefox TEST-PASSED | should fetch document info and page using range and streaming | in firefox TEST-PASSED | should fetch document info and page, without range, using complete initialData | in firefox TEST-PASSED | gets destinations, from /Names (NameTree) dictionary | in firefox TEST-PASSED | gets a non-existent destination, from /Dests dictionary | in firefox TEST-PASSED | gets a non-existent destination, from /Names (NameTree) dictionary | in firefox TEST-PASSED | performs a search with a single diacritic | in chrome TEST-PASSED | write a new stamp annotation in a tagged pdf, save, repeat and check the structure tree | in firefox TEST-PASSED | gets non-default page layout | in firefox TEST-PASSED | performs a search in a text containing combining diacritics | in chrome TEST-PASSED | gets a destination, from /Names (NameTree) dictionary | in firefox TEST-PASSED | gets hasJSActions, in document without javaScript | in firefox TEST-PASSED | performs a search with square brackets in the query | in chrome TEST-PASSED | write a new stamp annotation in a tagged pdf, save and check the structure tree | in firefox TEST-PASSED | gets default viewer preferences | in firefox TEST-PASSED | performs a search with parenthesis in the query | in chrome TEST-PASSED | ignores whitespace | in chrome TEST-PASSED | parses numbers | in chrome TEST-PASSED | parses booleans | in chrome TEST-PASSED | parses font header font matrix | in chrome TEST-PASSED | parses font header encoding | in chrome TEST-PASSED | parses number arrays | in chrome TEST-PASSED | skips comments | in chrome TEST-PASSED | splits tokens | in chrome TEST-PASSED | parses font program | in chrome TEST-PASSED | handles glued tokens | in chrome TEST-PASSED | should create correct objId/fontId using the idFactory | in chrome TEST-PASSED | should check if fields have any actions | in chrome TEST-PASSED | should get form info when no form data is present | in chrome TEST-PASSED | should get field objects array or null | in chrome TEST-PASSED | should get calculation order array or null | in chrome TEST-PASSED | should get form info when AcroForm is present | in chrome TEST-PASSED | should get form info when XFA is present | in chrome TEST-PASSED | should update a file, missing the /ID-entry, with new objects | in chrome TEST-PASSED | should update a file with new objects | in chrome TEST-PASSED | should write a Dict | in chrome TEST-PASSED | should write a Dict in escaping PDF names | in chrome TEST-PASSED | should update AcroForm when no datasets in XFA array | in chrome TEST-PASSED | should mark text as LTR if there's only LTR-characters, when the string is very short | in chrome TEST-PASSED | should mark text as LTR if less than 30% of text is RTL | in chrome TEST-PASSED | should mark text as RTL if more than 30% of text is RTL | in chrome TEST-PASSED | should mark text as RTL if less than 30% of text is RTL, when the string is very short (issue 11656) | in chrome TEST-PASSED | should mark text as LTR if there's only LTR-characters | in chrome TEST-PASSED | fetches `null` for unknown encoding names | in chrome TEST-PASSED | fetches a valid array for known encoding names | in chrome TEST-PASSED | gets markInfo | in firefox TEST-PASSED | gets non-default page mode | in firefox TEST-PASSED | checks that the *official* PDF.js-worker API exposes the expected functionality | in chrome TEST-PASSED | write a new stamp annotation, save the pdf and check that the same image has the same ref | in firefox TEST-PASSED | gets download info | in firefox TEST-PASSED | gets non-existent fieldObjects | in firefox TEST-PASSED | gets non-existent page labels | in firefox TEST-PASSED | gets outline, with named-actions (issue 15367) | in firefox TEST-PASSED | gets outline, with dest-strings using PDFDocEncoding (issue 14864) | in firefox TEST-PASSED | cleans up document resources | in firefox TEST-PASSED | gets page multiple time, with working caches | in firefox TEST-PASSED | gets non-existent calculationOrder | in firefox TEST-PASSED | gets fingerprints | in firefox TEST-PASSED | creates textLayer from ReadableStream | in chrome TEST-PASSED | read without stream and range | in chrome TEST-PASSED | read custom ranges | in chrome TEST-PASSED | should report the size of the cache | in chrome TEST-PASSED | should put, have and get a value | in chrome TEST-PASSED | should put, have and get a value by alias | in chrome TEST-PASSED | should support iteration | in chrome TEST-PASSED | should clear the cache | in chrome TEST-PASSED | should support iteration | in chrome TEST-PASSED | should not have an unknown value | in chrome TEST-PASSED | should have a stored value | in chrome TEST-PASSED | should handle Refs pointing to different objects | in chrome TEST-PASSED | should handle Refs pointing to the same object | in chrome TEST-PASSED | handles non-commands | in chrome TEST-PASSED | handles commands | in chrome TEST-PASSED | handles commands with cmd check | in chrome TEST-PASSED | should retain the given name | in chrome TEST-PASSED | should create only one object for a name and cache it | in chrome TEST-PASSED | should not accept to create a non-string name | in chrome TEST-PASSED | should create only one object for *empty* names and cache it | in chrome TEST-PASSED | handles non-dictionaries | in chrome TEST-PASSED | handles empty dictionaries with type check | in chrome TEST-PASSED | handles dictionaries with type check | in chrome TEST-PASSED | should create only one object for a command and cache it | in chrome TEST-PASSED | should not accept to create a non-string cmd | in chrome TEST-PASSED | should retain the given cmd name | in chrome TEST-PASSED | handles *empty* names, with name check | in chrome TEST-PASSED | handles names | in chrome TEST-PASSED | handles non-names | in chrome TEST-PASSED | handles names with name check | in chrome TEST-PASSED | should retain the stored values | in chrome TEST-PASSED | should get a string representation | in chrome TEST-PASSED | should create only one object for a reference and cache it | in chrome TEST-PASSED | should asynchronously fetch unknown keys | in chrome TEST-PASSED | should return correct values for multiple stored keys | in chrome TEST-PASSED | should return correct value for stored Size key | in chrome TEST-PASSED | should return invalid values for unknown keys when Size key is stored | in chrome TEST-PASSED | should not accept to set a non-string key | in chrome TEST-PASSED | should callback for each stored key | in chrome TEST-PASSED | should not accept to set a key with an undefined value | in chrome TEST-PASSED | should asynchronously fetch correct values for multiple stored keys | in chrome TEST-PASSED | should allow assigning an XRef table after creation | in chrome TEST-PASSED | should handle arrays containing indirect objects | in chrome TEST-PASSED | should handle keys pointing to indirect objects, both sync and async | in chrome TEST-PASSED | should return invalid values for unknown keys | in chrome TEST-PASSED | should get all raw values | in chrome TEST-PASSED | should get all key names | in chrome TEST-PASSED | should correctly merge dictionaries | in chrome TEST-PASSED | should create only one object for Dict.empty | in chrome TEST-PASSED | should return correct size | in chrome TEST-PASSED | should correctly merge sub-dictionaries | in chrome TEST-PASSED | checks that the number of "PREFERENCE" options does *not* exceed the maximum in mozilla-central | in chrome TEST-PASSED | checks that getAll returns data, for every OptionKind | in chrome TEST-PASSED | should dump a xml tree | in chrome TEST-PASSED | should search a node with a given path in xml tree | in chrome TEST-PASSED | should parse processing instructions | in chrome TEST-PASSED | gets expected character types | in chrome TEST-PASSED | should get correct total length after flushing | in chrome TEST-PASSED | should abort text content parsing | in chrome TEST-PASSED | should abort operator list parsing | in chrome TEST-PASSED | should handle two glued operations | in chrome TEST-PASSED | should handle three glued operations | in chrome TEST-PASSED | should reject unknown operations | in chrome TEST-PASSED | should handle one operation | in chrome TEST-PASSED | should handle glued operations and literals | in chrome TEST-PASSED | should handle three glued operations #2 | in chrome TEST-PASSED | should handle glued operations and operands | in chrome TEST-PASSED | should error if (many) path operators have too few arguments (bug 1443140) | in chrome TEST-PASSED | should close opened saves | in chrome TEST-PASSED | should error on paintXObject if name is missing | in chrome TEST-PASSED | should skip if too few arguments | in chrome TEST-PASSED | should execute if correct number of arguments | in chrome TEST-PASSED | should execute if nested commands | in chrome TEST-PASSED | should skip paintXObject if subtype is PS | in chrome TEST-PASSED | gets non-default open action (with Print action) | in firefox TEST-PASSED | should execute if too many arguments | in chrome TEST-PASSED | creates pdf doc from URL and aborts before worker initialized | in chrome TEST-PASSED | gets outline, with SetOCGState-actions (issue 15372) | in firefox TEST-PASSED | creates pdf doc from ArrayBuffer | in chrome TEST-PASSED | gets fieldObjects with missing /P-entries | in firefox TEST-PASSED | creates pdf doc from TypedArray | in chrome TEST-PASSED | creates pdf doc from invalid PDF file | in chrome TEST-PASSED | creates pdf doc from non-existent URL | in chrome TEST-PASSED | write a new annotation, save the pdf and check that the text content is correct | in firefox TEST-PASSED | creates pdf doc from URL-string | in chrome TEST-PASSED | gets hasJSActions, in document with javaScript | in firefox TEST-PASSED | gets number of pages | in firefox TEST-PASSED | creates pdf doc from URL | in chrome TEST-PASSED | creates pdf doc from empty TypedArray | in chrome TEST-PASSED | gets outline with non-displayable chars | in firefox TEST-PASSED | gets data | in firefox TEST-PASSED | gets calculationOrder | in firefox TEST-PASSED | creates pdf doc from PDF file with bad XRef entry | in chrome TEST-PASSED | gets default page mode | in firefox TEST-PASSED | gets non-existent permissions | in firefox TEST-PASSED | gets non-existent JSActions | in firefox TEST-PASSED | checks the `startxref` position of a linearized pdf doc (issue 17665) | in chrome TEST-PASSED | gets a destination, from out-of-order /Names (NameTree) dictionary (issue 10272) | in firefox TEST-PASSED | gets a destination, from /Dests dictionary | in firefox TEST-PASSED | creates pdf doc from URL and aborts loading after worker initialized | in chrome TEST-PASSED | gets permissions | in firefox TEST-PASSED | gets javascript with printing instructions (JS action) | in firefox TEST-PASSED | checks that `docId`s are unique and increasing | in chrome TEST-PASSED | gets outline containing a URL | in firefox TEST-PASSED | gets destinations, from /Dests dictionary | in firefox TEST-PASSED | gets metadata, with custom info dict entries | in firefox TEST-PASSED | gets non-existent page | in firefox TEST-PASSED | creates pdf doc from PDF file with bad XRef byteWidths | in chrome TEST-PASSED | edit and write an existing annotation, save the pdf and check that the Annot array doesn't contain dup entries | in firefox TEST-PASSED | gets non-existent attachments | in firefox TEST-PASSED | gets outline | in firefox TEST-PASSED | creates pdf doc from URL-object | in chrome TEST-PASSED | gets metadata, with missing PDF header (bug 1606566) | in firefox TEST-PASSED | gets page | in firefox TEST-PASSED | creates pdf doc from password protected PDF file and passes an Error (asynchronously) to the onPassword callback (bug 1754421) | in chrome TEST-PASSED | gets page, from /Pages tree with circular reference | in firefox TEST-PASSED | gets invalid page index | in firefox TEST-PASSED | creates pdf doc from PDF files, with bad /Pages tree /Count | in chrome TEST-PASSED | creates pdf doc from PDF file with bad XRef header | in chrome TEST-PASSED | creates pdf doc from PDF file with inaccessible /Pages tree | in chrome TEST-PASSED | creates pdf doc from PDF files, with circular references | in chrome TEST-PASSED | creates pdf doc from PDF files, with bad /Pages tree /Kids entries | in chrome TEST-PASSED | write a value in an annotation, save the pdf and check the value in xfa datasets (1) | in firefox TEST-PASSED | creates pdf doc from password protected PDF file and aborts/throws in the onPassword callback (issue 7806) | in chrome TEST-PASSED | gets metadata, with corrupt /Metadata XRef entry | in firefox TEST-PASSED | gets fingerprints, from modified document | in firefox TEST-PASSED | gets attachments | in firefox TEST-PASSED | gets a destination, from /Names (NameTree) dictionary with keys using PDFDocEncoding (issue 14847) | in firefox TEST-PASSED | gets page index | in firefox TEST-PASSED | creates pdf doc from PDF file protected with only a user password | in chrome TEST-PASSED | gets fieldObjects | in firefox TEST-PASSED | gets non-default open action (with destination) | in firefox TEST-PASSED | gets non-default viewer preferences | in firefox TEST-PASSED | write a new annotation, save the pdf and check that the prev entry in xref stream is correct | in firefox TEST-PASSED | creates pdf doc from PDF file with bad /Resources entry | in chrome TEST-PASSED | gets outline, with missing title (issue 17856) | in firefox TEST-PASSED | gets non-string destination | in firefox TEST-PASSED | checks that fingerprints are unique | in firefox TEST-PASSED | creates pdf doc from PDF file, with incomplete trailer | in chrome TEST-PASSED | gets JSActions | in firefox TEST-PASSED | gets default open action | in firefox TEST-PASSED | gets default page layout | in firefox TEST-PASSED | creates pdf doc from PDF file protected with user and owner password | in chrome TEST-PASSED | write a value in an annotation, save the pdf and load it | in firefox TEST-PASSED | read content from multiline textfield containing an empty line | in firefox TEST-PASSED | worker created and can be used in getDocument | in chrome TEST-PASSED | server allows cors without credentials, default withCredentials | in firefox TEST-PASSED | server allows cors without credentials, and withCredentials=false | in firefox TEST-PASSED | server allows cors without credentials, but withCredentials=true | in firefox TEST-PASSED | server allows cors with credentials, and withCredentials=false | in firefox TEST-PASSED | server allows cors with credentials, and withCredentials=true | in firefox TEST-PASSED | server disallows cors | in firefox TEST-PASSED | gets non-existent outline | in firefox TEST-PASSED | creates more than one worker | in chrome TEST-PASSED | gets current workerSrc | in chrome TEST-PASSED | gets page labels | in firefox TEST-PASSED | worker created or destroyed | in chrome TEST-PASSED | worker created or destroyed by getDocument | in chrome TEST-PASSED | write a value in an annotation, save the pdf and check the value in xfa datasets (2) | in firefox TEST-PASSED | use global `workerPort` with multiple, parallel, documents | in chrome TEST-PASSED | use global `workerPort` with multiple, sequential, documents | in chrome TEST-PASSED | write a text and a stamp annotation but no alt text (bug 1855157) | in firefox TEST-PASSED | gets metadata | in firefox TEST-PASSED | avoid using the global `workerPort` when destruction has started, but not yet finished (issue 16777) | in chrome TEST-PASSED | gets metadata | in chrome TEST-PASSED | write a new stamp annotation in a non-tagged pdf, save and check that the structure tree | in firefox TEST-PASSED | gets userUnit | in firefox TEST-PASSED | gets view | in firefox TEST-PASSED | cleans up document resources during rendering of page | in firefox TEST-PASSED | gets text content, with correct properties (issue 8276) | in firefox TEST-PASSED | write a value in an annotation, save the pdf and check the value in xfa datasets (1) | in chrome TEST-PASSED | gets non-existent fieldObjects | in chrome TEST-PASSED | gets fieldObjects | in chrome TEST-PASSED | gets page | in chrome TEST-PASSED | gets outline, with missing title (issue 17856) | in chrome TEST-PASSED | gets non-default open action (with destination) | in chrome TEST-PASSED | multiple render() on the same canvas | in firefox TEST-PASSED | gets operator list, containing Annotation-operatorLists | in firefox TEST-PASSED | write a new stamp annotation in a tagged pdf, save, repeat and check the structure tree | in chrome TEST-PASSED | gets default page mode | in chrome TEST-PASSED | gets text content with or without includeMarkedContent, and compare (issue 15094) | in firefox TEST-PASSED | gets text content | in firefox TEST-PASSED | write a new stamp annotation in a tagged pdf, save and check the structure tree | in chrome TEST-PASSED | gets outline | in chrome TEST-PASSED | gets hasJSActions, in document with javaScript | in chrome TEST-PASSED | write a new stamp annotation, save the pdf and check that the same image has the same ref | in chrome TEST-PASSED | gets non-default page layout | in chrome TEST-PASSED | gets outline, with named-actions (issue 15367) | in chrome TEST-PASSED | cleans up document resources after rendering of page | in firefox TEST-PASSED | gets page number | in firefox TEST-PASSED | gets outline containing a URL | in chrome TEST-PASSED | gets text content, with no extra spaces (issue 16119) | in firefox TEST-PASSED | gets default page layout | in chrome TEST-PASSED | gets text content with multi-byte entries, using predefined CMaps (issue 16176) | in firefox TEST-PASSED | gets annotations | in firefox TEST-PASSED | gets viewport with invalid rotation | in firefox TEST-PASSED | re-render page, using the same canvas, after cancelling rendering | in firefox TEST-PASSED | gets page labels | in chrome TEST-PASSED | gets non-string destination | in chrome TEST-PASSED | gets view, with empty/invalid bounding boxes | in firefox TEST-PASSED | write a new annotation, save the pdf and check that the text content is correct | in chrome TEST-PASSED | gets fieldObjects with missing /P-entries | in chrome TEST-PASSED | gets page stats after parsing page, with `pdfBug` set | in firefox TEST-PASSED | gets viewport | in firefox TEST-PASSED | write a new stamp annotation in a non-tagged pdf, save and check that the structure tree | in chrome TEST-PASSED | gets attachments | in chrome TEST-PASSED | gets non-existent page labels | in chrome TEST-PASSED | gets a destination, from /Names (NameTree) dictionary with keys using PDFDocEncoding (issue 14847) | in chrome TEST-PASSED | gets outline with non-displayable chars | in chrome TEST-PASSED | gets page stats after rendering page, with `pdfBug` set | in firefox TEST-PASSED | gets default viewer preferences | in chrome TEST-PASSED | gets number of pages | in chrome TEST-PASSED | render for printing, with `printAnnotationStorage` set | in firefox TEST-PASSED | gets outline, with dest-strings using PDFDocEncoding (issue 14864) | in chrome TEST-PASSED | gets annotations containing relative URLs (bug 766086) | in firefox TEST-PASSED | gets operator list | in firefox TEST-PASSED | gets non-default open action (with Print action) | in chrome TEST-PASSED | gets text content, with invisible text marks (issue 9186) | in firefox TEST-PASSED | gets text content, with no extra spaces (issue 13226) | in firefox TEST-PASSED | gets rotate | in firefox TEST-PASSED | gets a destination, from out-of-order /Names (NameTree) dictionary (issue 10272) | in chrome TEST-PASSED | gets text content, with negative spaces (bug 931481) | in firefox TEST-PASSED | gets simple structure tree | in firefox TEST-PASSED | gets ref | in firefox TEST-PASSED | write a new annotation, save the pdf and check that the prev entry in xref stream is correct | in chrome TEST-PASSED | gets outline, with SetOCGState-actions (issue 15372) | in chrome TEST-PASSED | gets fingerprints | in chrome TEST-PASSED | gets non-existent calculationOrder | in chrome TEST-PASSED | gets non-existent attachments | in chrome TEST-PASSED | gets operator list, with `annotationMode`-option | in firefox TEST-PASSED | gets metadata, with missing PDF header (bug 1606566) | in chrome TEST-PASSED | gets text content, and check that out-of-page text is not present (bug 1755201) | in firefox TEST-PASSED | gets a non-existent destination, from /Names (NameTree) dictionary | in chrome TEST-PASSED | gets operatorList, from corrupt PDF file (issue 8702), with/without `stopAtErrors` set | in firefox TEST-PASSED | gets text content, with no spaces between letters of words (issue 11913) | in firefox TEST-PASSED | gets annotations containing GoToE action (issue 8844) | in firefox TEST-PASSED | cancels rendering of page | in firefox TEST-PASSED | gets text content with a rised text | in firefox TEST-PASSED | gets operatorList with JPEG image (issue 4888) | in firefox TEST-PASSED | write a text and a stamp annotation but no alt text (bug 1855157) | in chrome TEST-PASSED | gets non-default page mode | in chrome TEST-PASSED | gets text content, with beginbfrange operator handled correctly (bug 1627427) | in firefox TEST-PASSED | gets annotations containing GoToE action with destination (issue 17056) | in firefox TEST-PASSED | gets text content, with merged spaces (issue 13201) | in firefox TEST-PASSED | gets text content, with merged spaces (issue 10900) | in firefox TEST-PASSED | edit and write an existing annotation, save the pdf and check that the Annot array doesn't contain dup entries | in chrome TEST-PASSED | gets fingerprints, from modified document | in chrome TEST-PASSED | gets metadata, with corrupt /Metadata XRef entry | in chrome TEST-PASSED | gets non-existent JSActions | in chrome TEST-PASSED | server allows cors with credentials, and withCredentials=true | in chrome TEST-PASSED | server allows cors without credentials, default withCredentials | in chrome TEST-PASSED | server allows cors without credentials, but withCredentials=true | in chrome TEST-PASSED | server allows cors without credentials, and withCredentials=false | in chrome TEST-PASSED | server disallows cors | in chrome TEST-PASSED | server allows cors with credentials, and withCredentials=false | in chrome TEST-PASSED | gets markInfo | in chrome TEST-PASSED | checks that fingerprints are unique | in chrome TEST-PASSED | gets destinations, from /Names (NameTree) dictionary | in chrome TEST-PASSED | gets JSActions | in chrome TEST-PASSED | write a value in an annotation, save the pdf and load it | in chrome TEST-PASSED | gets a destination, from /Names (NameTree) dictionary | in chrome TEST-PASSED | gets a non-existent destination, from /Dests dictionary | in chrome TEST-PASSED | gets data | in chrome TEST-PASSED | gets calculationOrder | in chrome TEST-PASSED | gets permissions | in chrome TEST-PASSED | read content from multiline textfield containing an empty line | in chrome TEST-PASSED | gets non-default viewer preferences | in chrome TEST-PASSED | gets download info | in chrome TEST-PASSED | gets metadata, with custom info dict entries | in chrome TEST-PASSED | gets a destination, from /Dests dictionary | in chrome TEST-PASSED | write a value in an annotation, save the pdf and check the value in xfa datasets (2) | in chrome TEST-PASSED | gets default open action | in chrome TEST-PASSED | cleans up document resources | in chrome TEST-PASSED | gets non-existent permissions | in chrome TEST-PASSED | gets non-existent outline | in chrome TEST-PASSED | gets destinations, from /Dests dictionary | in chrome TEST-PASSED | gets page index | in chrome TEST-PASSED | gets javascript with printing instructions (JS action) | in chrome TEST-PASSED | gets invalid page index | in chrome TEST-PASSED | gets page multiple time, with working caches | in chrome TEST-PASSED | gets hasJSActions, in document without javaScript | in chrome TEST-PASSED | gets page, from /Pages tree with circular reference | in chrome TEST-PASSED | gets non-existent page | in chrome TEST-PASSED | check that a chunk is pushed when font is restored | in chrome TEST-PASSED | gets operator list | in chrome TEST-PASSED | gets text content, with merged spaces (issue 10900) | in chrome TEST-PASSED | multiple render() on the same canvas | in chrome TEST-PASSED | gets annotations containing GoToE action with destination (issue 17056) | in chrome TEST-PASSED | gets simple structure tree | in chrome TEST-PASSED | gets annotations containing /Launch action with /FileSpec dictionary (issue 17846) | in chrome TEST-PASSED | cleans up document resources during rendering of page | in chrome TEST-PASSED | gets annotations containing relative URLs (bug 766086) | in chrome TEST-PASSED | caches image resources at the document/page level as expected (issue 11878) | in firefox TEST-PASSED | check that a chunk is pushed when font is restored | in firefox TEST-PASSED | gets viewport with "offsetX/offsetY" arguments | in firefox TEST-PASSED | gets text content with a specific view box | in firefox TEST-PASSED | gets viewport respecting "dontFlip" argument | in firefox TEST-PASSED | gets annotations containing /Launch action with /FileSpec dictionary (issue 17846) | in firefox TEST-PASSED | gets operatorList, with page resources containing corrupt /CCITTFaxDecode data | in firefox TEST-PASSED | gets text content, with spaces (issue 10640) | in firefox TEST-PASSED | gets empty structure tree | in firefox TEST-PASSED | gets page stats after parsing page, without `pdfBug` set | in firefox TEST-PASSED | creates pdf doc from PDF file with inaccessible /Pages tree | in firefox TEST-PASSED | creates pdf doc from PDF file protected with only a user password | in firefox TEST-PASSED | creates pdf doc from PDF files, with bad /Pages tree /Kids entries | in firefox TEST-PASSED | creates pdf doc from PDF file protected with user and owner password | in firefox TEST-PASSED | creates pdf doc from PDF files, with bad /Pages tree /Count | in firefox TEST-PASSED | creates pdf doc from PDF files, with circular references | in firefox TEST-PASSED | creates pdf doc from empty TypedArray | in firefox TEST-PASSED | caches image resources at the document/page level as expected (issue 11878) | in chrome TEST-PASSED | creates pdf doc from URL-object | in firefox TEST-PASSED | gets annotations containing GoToE action (issue 8844) | in chrome TEST-PASSED | checks the `startxref` position of a linearized pdf doc (issue 17665) | in firefox TEST-PASSED | creates pdf doc from URL-string | in firefox TEST-PASSED | creates pdf doc from URL and aborts before worker initialized | in firefox TEST-PASSED | gets text content, with no spaces between letters of words (issue 11913) | in chrome TEST-PASSED | gets operator list, containing Annotation-operatorLists | in chrome TEST-PASSED | gets viewport with invalid rotation | in chrome TEST-PASSED | creates pdf doc from password protected PDF file and aborts/throws in the onPassword callback (issue 7806) | in firefox TEST-PASSED | creates pdf doc from PDF file with bad /Resources entry | in firefox TEST-PASSED | gets operator list, with `annotationMode`-option | in chrome TEST-PASSED | creates pdf doc from password protected PDF file and passes an Error (asynchronously) to the onPassword callback (bug 1754421) | in firefox TEST-PASSED | creates pdf doc from URL | in firefox TEST-PASSED | creates pdf doc from TypedArray | in firefox TEST-PASSED | creates pdf doc from PDF file, with incomplete trailer | in firefox TEST-PASSED | cleans up document resources after rendering of page | in chrome TEST-PASSED | gets annotations | in chrome TEST-PASSED | creates pdf doc from invalid PDF file | in firefox TEST-PASSED | creates pdf doc from PDF file with bad XRef header | in firefox TEST-PASSED | gets operatorList, with page resources containing corrupt /CCITTFaxDecode data | in chrome file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js:69 this._reject(callback, new TargetCloseError('Target closed')); ^ TargetCloseError: Protocol error (Runtime.callFunctionOn): Target closed at CallbackRegistry.clear (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js:69:36) at CdpCDPSession._onClosed (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js:98:25) at Connection.onMessage (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Connection.js:118:25) at WebSocket. (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.js:36:32) at callListener (C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\node_modules\ws\lib\event-target.js:290:14) at WebSocket.onMessage (C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\node_modules\ws\lib\event-target.js:209:9) at WebSocket.emit (node:events:513:28) at Receiver.receiverOnMessage (C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\node_modules\ws\lib\websocket.js:1209:20) at Receiver.emit (node:events:513:28) at C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\node_modules\ws\lib\receiver.js:608:16 { cause: ProtocolError at (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js:89:14) at new Callback (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js:93:16) at CallbackRegistry.create (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/common/CallbackRegistry.js:19:26) at Connection._rawSend (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Connection.js:77:26) at CdpCDPSession.send (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/CDPSession.js:63:33) at CDPClientAdapter.sendCommand (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/node_modules/puppeteer-core/lib/esm/puppeteer/bidi/BidiOverCdp.js:106:39) at WorkerRealm.serializeCdpObject (C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\node_modules\chromium-bidi\lib\cjs\bidiMapper\modules\script\Realm.js:152:47) at C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\node_modules\chromium-bidi\lib\cjs\bidiMapper\modules\log\LogManager.js:64:38 at Array.map () at C:\pdfjs\botio-files-pdfjs\private\92a94d4274292a5\node_modules\chromium-bidi\lib\cjs\bidiMapper\modules\log\LogManager.js:63:45 } Node.js v18.16.0 [20:08:24] 'runBotTest' errored after 2.8 min [20:08:24] Error: Running unit tests failed. at ChildProcess. (file:///C:/pdfjs/botio-files-pdfjs/private/92a94d4274292a5/gulpfile.mjs:731:15) at ChildProcess.emit (node:events:513:28) at ChildProcess.emit (node:domain:552:15) at maybeClose (node:internal/child_process:1091:16) at ChildProcess._handle.onexit (node:internal/child_process:302:5) at Process.callbackTrampoline (node:internal/async_hooks:130:17) [20:08:24] 'bottest' errored after 3.13 min !botio_message:+ **Unit tests:** FAILED !botio_message:+ **Integration Tests:** FAILED !botio_message:+ **Regression tests:** FAILED >> Copying reftest analyzer files !botio_message: !botio_message:Image differences available at: http://54.193.163.58:8877/92a94d4274292a5/reftest-analyzer.html#web=eq.log >> Updating local PDF cache