Initial import of first test harness
The harness (test.py) operates as follows. First it locates executable browsers
(or symlinks or scripts) named "[browser][version]", e.g. "firefox4".
It then launches the located browsers and asks them to load the file
test_slave.html. At the same time, test.py sets up an HTTP server on
localhost:8080 (there's a race condition here currently ;). After
test_slave loads in the browser(s), it fetches the task manifest
(test_manifest.json). The entries in the manifest specify which PDF
to load and how many times to cycle through page rendering. This will
probably evolve over time. test_slave then performs the requested
tasks and POSTs the results back to test.py, which saves them. When
all the results of for a task are in, test.py checks them.
There are three types of tests currently. "==" tests compare the
rendering of a PDF against a master copy. This is not yet implemented
because setting up a master copy is complicated. "fbf" tests render
all a PDF's pages, then go back to page 1 and render all pages a
second time. The renderings from the first round must match the ones
from the second round. "load" tests just check that a PDF's pages
load without errors.
Currently the test harness will only launch a "firefox4" target. This
can be a bash script in your pdf.js checkout, pdf.js/firefox4,
something like the following
#!/bin/bash
dist="/path/to/firefox4/installation"
profile=`mktemp -dt 'pdf.js-test-ff-profile-XXXXXXXXXX'`
$dist/firefox -no-remote -profile $profile $*
rm -rf $profile
(Yes, this script doesn't clean up properly on early termination.)
It's possible to run the tests in a normal browsing session, but that
might be annoying. With that set up, run the harness like so
python test.py
If all goes well, you'll see all "TEST-PASS" messages printed to
stdout. If something goes wrong, you'll see "TEST-UNEXPECTED-FAIL"
printed to stdout.
2011-06-18 18:09:21 -07:00
|
|
|
[
|
2011-06-21 14:53:57 -07:00
|
|
|
{ "id": "tracemonkey-eq",
|
2011-06-23 09:48:34 -07:00
|
|
|
"file": "pdfs/tracemonkey.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "9a192d8b1a7dc652a19835f6f08098bd",
|
Initial import of first test harness
The harness (test.py) operates as follows. First it locates executable browsers
(or symlinks or scripts) named "[browser][version]", e.g. "firefox4".
It then launches the located browsers and asks them to load the file
test_slave.html. At the same time, test.py sets up an HTTP server on
localhost:8080 (there's a race condition here currently ;). After
test_slave loads in the browser(s), it fetches the task manifest
(test_manifest.json). The entries in the manifest specify which PDF
to load and how many times to cycle through page rendering. This will
probably evolve over time. test_slave then performs the requested
tasks and POSTs the results back to test.py, which saves them. When
all the results of for a task are in, test.py checks them.
There are three types of tests currently. "==" tests compare the
rendering of a PDF against a master copy. This is not yet implemented
because setting up a master copy is complicated. "fbf" tests render
all a PDF's pages, then go back to page 1 and render all pages a
second time. The renderings from the first round must match the ones
from the second round. "load" tests just check that a PDF's pages
load without errors.
Currently the test harness will only launch a "firefox4" target. This
can be a bash script in your pdf.js checkout, pdf.js/firefox4,
something like the following
#!/bin/bash
dist="/path/to/firefox4/installation"
profile=`mktemp -dt 'pdf.js-test-ff-profile-XXXXXXXXXX'`
$dist/firefox -no-remote -profile $profile $*
rm -rf $profile
(Yes, this script doesn't clean up properly on early termination.)
It's possible to run the tests in a normal browsing session, but that
might be annoying. With that set up, run the harness like so
python test.py
If all goes well, you'll see all "TEST-PASS" messages printed to
stdout. If something goes wrong, you'll see "TEST-UNEXPECTED-FAIL"
printed to stdout.
2011-06-18 18:09:21 -07:00
|
|
|
"rounds": 1,
|
2011-06-21 14:53:57 -07:00
|
|
|
"type": "eq"
|
Initial import of first test harness
The harness (test.py) operates as follows. First it locates executable browsers
(or symlinks or scripts) named "[browser][version]", e.g. "firefox4".
It then launches the located browsers and asks them to load the file
test_slave.html. At the same time, test.py sets up an HTTP server on
localhost:8080 (there's a race condition here currently ;). After
test_slave loads in the browser(s), it fetches the task manifest
(test_manifest.json). The entries in the manifest specify which PDF
to load and how many times to cycle through page rendering. This will
probably evolve over time. test_slave then performs the requested
tasks and POSTs the results back to test.py, which saves them. When
all the results of for a task are in, test.py checks them.
There are three types of tests currently. "==" tests compare the
rendering of a PDF against a master copy. This is not yet implemented
because setting up a master copy is complicated. "fbf" tests render
all a PDF's pages, then go back to page 1 and render all pages a
second time. The renderings from the first round must match the ones
from the second round. "load" tests just check that a PDF's pages
load without errors.
Currently the test harness will only launch a "firefox4" target. This
can be a bash script in your pdf.js checkout, pdf.js/firefox4,
something like the following
#!/bin/bash
dist="/path/to/firefox4/installation"
profile=`mktemp -dt 'pdf.js-test-ff-profile-XXXXXXXXXX'`
$dist/firefox -no-remote -profile $profile $*
rm -rf $profile
(Yes, this script doesn't clean up properly on early termination.)
It's possible to run the tests in a normal browsing session, but that
might be annoying. With that set up, run the harness like so
python test.py
If all goes well, you'll see all "TEST-PASS" messages printed to
stdout. If something goes wrong, you'll see "TEST-UNEXPECTED-FAIL"
printed to stdout.
2011-06-18 18:09:21 -07:00
|
|
|
},
|
|
|
|
{ "id": "tracemonkey-fbf",
|
2011-06-23 09:48:34 -07:00
|
|
|
"file": "pdfs/tracemonkey.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "9a192d8b1a7dc652a19835f6f08098bd",
|
Initial import of first test harness
The harness (test.py) operates as follows. First it locates executable browsers
(or symlinks or scripts) named "[browser][version]", e.g. "firefox4".
It then launches the located browsers and asks them to load the file
test_slave.html. At the same time, test.py sets up an HTTP server on
localhost:8080 (there's a race condition here currently ;). After
test_slave loads in the browser(s), it fetches the task manifest
(test_manifest.json). The entries in the manifest specify which PDF
to load and how many times to cycle through page rendering. This will
probably evolve over time. test_slave then performs the requested
tasks and POSTs the results back to test.py, which saves them. When
all the results of for a task are in, test.py checks them.
There are three types of tests currently. "==" tests compare the
rendering of a PDF against a master copy. This is not yet implemented
because setting up a master copy is complicated. "fbf" tests render
all a PDF's pages, then go back to page 1 and render all pages a
second time. The renderings from the first round must match the ones
from the second round. "load" tests just check that a PDF's pages
load without errors.
Currently the test harness will only launch a "firefox4" target. This
can be a bash script in your pdf.js checkout, pdf.js/firefox4,
something like the following
#!/bin/bash
dist="/path/to/firefox4/installation"
profile=`mktemp -dt 'pdf.js-test-ff-profile-XXXXXXXXXX'`
$dist/firefox -no-remote -profile $profile $*
rm -rf $profile
(Yes, this script doesn't clean up properly on early termination.)
It's possible to run the tests in a normal browsing session, but that
might be annoying. With that set up, run the harness like so
python test.py
If all goes well, you'll see all "TEST-PASS" messages printed to
stdout. If something goes wrong, you'll see "TEST-UNEXPECTED-FAIL"
printed to stdout.
2011-06-18 18:09:21 -07:00
|
|
|
"rounds": 2,
|
|
|
|
"type": "fbf"
|
|
|
|
},
|
|
|
|
{ "id": "html5-canvas-cheat-sheet-load",
|
2011-06-23 09:48:34 -07:00
|
|
|
"file": "pdfs/canvas.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "59510028561daf62e00bf9f6f066b033",
|
Initial import of first test harness
The harness (test.py) operates as follows. First it locates executable browsers
(or symlinks or scripts) named "[browser][version]", e.g. "firefox4".
It then launches the located browsers and asks them to load the file
test_slave.html. At the same time, test.py sets up an HTTP server on
localhost:8080 (there's a race condition here currently ;). After
test_slave loads in the browser(s), it fetches the task manifest
(test_manifest.json). The entries in the manifest specify which PDF
to load and how many times to cycle through page rendering. This will
probably evolve over time. test_slave then performs the requested
tasks and POSTs the results back to test.py, which saves them. When
all the results of for a task are in, test.py checks them.
There are three types of tests currently. "==" tests compare the
rendering of a PDF against a master copy. This is not yet implemented
because setting up a master copy is complicated. "fbf" tests render
all a PDF's pages, then go back to page 1 and render all pages a
second time. The renderings from the first round must match the ones
from the second round. "load" tests just check that a PDF's pages
load without errors.
Currently the test harness will only launch a "firefox4" target. This
can be a bash script in your pdf.js checkout, pdf.js/firefox4,
something like the following
#!/bin/bash
dist="/path/to/firefox4/installation"
profile=`mktemp -dt 'pdf.js-test-ff-profile-XXXXXXXXXX'`
$dist/firefox -no-remote -profile $profile $*
rm -rf $profile
(Yes, this script doesn't clean up properly on early termination.)
It's possible to run the tests in a normal browsing session, but that
might be annoying. With that set up, run the harness like so
python test.py
If all goes well, you'll see all "TEST-PASS" messages printed to
stdout. If something goes wrong, you'll see "TEST-UNEXPECTED-FAIL"
printed to stdout.
2011-06-18 18:09:21 -07:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-06-21 15:14:42 -07:00
|
|
|
},
|
2011-12-22 17:43:14 -06:00
|
|
|
{ "id": "intelisa-eq",
|
2011-06-24 19:23:29 -07:00
|
|
|
"file": "pdfs/intelisa.pdf",
|
2012-04-06 22:34:49 -07:00
|
|
|
"md5": "c1444b7ccd935c0577d094297e1a6448",
|
2011-06-24 19:23:29 -07:00
|
|
|
"link": true,
|
2011-12-22 17:43:14 -06:00
|
|
|
"pageLimit": 100,
|
2011-06-24 19:23:29 -07:00
|
|
|
"rounds": 1,
|
2011-12-22 17:43:14 -06:00
|
|
|
"type": "eq"
|
2011-06-24 19:23:29 -07:00
|
|
|
},
|
2011-06-21 15:14:42 -07:00
|
|
|
{ "id": "pdfspec-load",
|
2011-06-23 09:48:34 -07:00
|
|
|
"file": "pdfs/pdf.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "dbdb23c939d2be09b43126c3c56060c7",
|
2011-06-21 15:14:42 -07:00
|
|
|
"link": true,
|
2012-04-15 21:12:00 -05:00
|
|
|
"pageLimit": 500,
|
2011-06-21 15:14:42 -07:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-06-26 09:15:33 -05:00
|
|
|
},
|
2011-07-05 13:21:28 -04:00
|
|
|
{ "id": "shavian-load",
|
|
|
|
"file": "pdfs/shavian.pdf",
|
2012-04-06 22:34:49 -07:00
|
|
|
"md5": "79253352f48b55b7fa28a2586875d8b7",
|
2011-07-05 13:21:28 -04:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
2011-06-26 09:15:33 -05:00
|
|
|
{ "id": "sizes",
|
|
|
|
"file": "pdfs/sizes.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "c101ba7b44aee36048e1ac7b98f302ea",
|
2011-06-26 09:15:33 -05:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-06-27 20:13:11 -05:00
|
|
|
},
|
2011-10-07 22:46:01 -05:00
|
|
|
{ "id": "plusminus",
|
|
|
|
"file": "pdfs/Test-plusminus.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "1ec7ade5b95ac9aaba3a618af28d34c7",
|
2011-10-07 22:46:01 -05:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-07-06 00:43:47 +01:00
|
|
|
{ "id": "openoffice-pdf",
|
|
|
|
"file": "pdfs/DiwanProfile.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "55d0c6a1a6d26c9ec9dcecaa7a471e0e",
|
2011-07-06 00:43:47 +01:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-07-13 09:55:13 +01:00
|
|
|
},
|
|
|
|
{ "id": "openofficecidtruetype-pdf",
|
|
|
|
"file": "pdfs/arial_unicode_en_cidfont.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "03591cdf20214fb0b2dd5e5c3dd32d8c",
|
2011-07-13 09:55:13 +01:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
|
|
|
{ "id": "openofficearabiccidtruetype-pdf",
|
|
|
|
"file": "pdfs/arial_unicode_ab_cidfont.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "35090fa7d29e7196ae3421812e554988",
|
2011-07-13 09:55:13 +01:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
|
|
|
{ "id": "arabiccidtruetype-pdf",
|
|
|
|
"file": "pdfs/ArabicCIDTrueType.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "d66dbd18bdb572d3ac8b88b32de2ece6",
|
2011-07-13 09:55:13 +01:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-07-20 23:17:31 -05:00
|
|
|
},
|
2011-08-19 14:04:34 +01:00
|
|
|
{ "id": "complexttffont-pdf",
|
|
|
|
"file": "pdfs/complex_ttf_font.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "76de93f9116b01b693bf8583b3e76d91",
|
2011-08-19 14:04:34 +01:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
2011-10-03 13:57:01 +01:00
|
|
|
{ "id": "thuluthfont-pdf",
|
|
|
|
"file": "pdfs/ThuluthFeatures.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "b7e18bf7a3d6a9c82aefa12d721072fc",
|
2011-10-03 13:57:01 +01:00
|
|
|
"rounds": 1,
|
2011-10-05 21:22:52 -05:00
|
|
|
"type": "eq"
|
2011-10-03 13:57:01 +01:00
|
|
|
},
|
2011-12-07 21:38:34 -06:00
|
|
|
{ "id": "freeculture",
|
|
|
|
"file": "pdfs/freeculture.pdf",
|
|
|
|
"md5": "dcdf3a8268e6a18938a42d5149efcfca",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 5,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-09-17 17:13:22 -05:00
|
|
|
{ "id": "wnv_chinese-pdf",
|
|
|
|
"file": "pdfs/wnv_chinese.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "db682638e68391125e8982d3c984841e",
|
2011-09-17 17:13:22 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-07-20 23:17:31 -05:00
|
|
|
{ "id": "i9-pdf",
|
|
|
|
"file": "pdfs/i9.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "ba7cd54fdff083bb389295bc0415f6c5",
|
2011-07-20 23:17:31 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-08-03 22:22:24 -07:00
|
|
|
},
|
|
|
|
{ "id": "hmm-pdf",
|
|
|
|
"file": "pdfs/hmm.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "e08467e60101ee5f4a59716e86db6dc9",
|
2011-08-03 22:22:24 -07:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-08-06 14:41:18 -07:00
|
|
|
},
|
|
|
|
{ "id": "rotation",
|
|
|
|
"file": "pdfs/rotation.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "4fb25ada00ce7528569d9791c14decf5",
|
2011-08-06 14:41:18 -07:00
|
|
|
"rounds": 1,
|
2011-10-13 14:57:56 -07:00
|
|
|
"type": "eq"
|
2011-08-14 08:40:22 -05:00
|
|
|
},
|
|
|
|
{ "id": "ecma262-pdf",
|
|
|
|
"file": "pdfs/ecma262.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "763ead98f535578842891e5574e0af0f",
|
2011-08-14 08:40:22 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-08-14 12:26:48 -05:00
|
|
|
},
|
|
|
|
{ "id": "jai-pdf",
|
|
|
|
"file": "pdfs/jai.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "1f5dd128c3757420a881a155f2f8ace3",
|
2011-08-14 12:26:48 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-08-28 16:36:58 -05:00
|
|
|
},
|
|
|
|
{ "id": "cable",
|
|
|
|
"file": "pdfs/cable.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "09a41b9a759d60c698228224ab85b46d",
|
2011-08-28 16:36:58 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-08-30 22:32:56 -05:00
|
|
|
},
|
|
|
|
{ "id": "pdkids",
|
|
|
|
"file": "pdfs/pdkids.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "278982bf016dbe46d2066f9245d9b3e6",
|
2011-08-30 22:32:56 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-09-14 21:29:32 -05:00
|
|
|
},
|
2011-09-13 19:23:49 -05:00
|
|
|
{ "id": "artofwar",
|
|
|
|
"file": "pdfs/artofwar.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "7bdd51c327b74f1f7abdd90eedb2f912",
|
2011-09-13 19:23:49 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-09-14 21:45:12 -05:00
|
|
|
},
|
2011-09-17 10:32:42 -05:00
|
|
|
{ "id": "wdsg_fitc",
|
|
|
|
"file": "pdfs/wdsg_fitc.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "5bb1c2b83705d4cdfc43197ee74f07f9",
|
2011-09-17 10:32:42 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-09-17 11:23:34 -05:00
|
|
|
},
|
2011-10-01 21:24:11 -05:00
|
|
|
{ "id": "unix01",
|
|
|
|
"file": "pdfs/unix01.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "2742999f0bf9b9c035dbb0736096e220",
|
2011-10-01 21:24:11 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-10-11 18:26:25 -05:00
|
|
|
{ "id": "fit11-talk",
|
|
|
|
"file": "pdfs/fit11-talk.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "eb7b224107205db4fea9f7df0185f77d",
|
2011-10-11 18:26:25 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-09-14 21:29:32 -05:00
|
|
|
{ "id": "fips197",
|
|
|
|
"file": "pdfs/fips197.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "374800cf78ce4b4abd02cd10a856b57f",
|
2011-09-14 21:29:32 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
2011-10-12 17:52:11 -05:00
|
|
|
"type": "eq"
|
2011-09-20 15:42:52 -07:00
|
|
|
},
|
|
|
|
{ "id": "txt2pdf",
|
|
|
|
"file": "pdfs/txt2pdf.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "02cefa0f5e8d96313bb05163b2f88c8c",
|
2011-09-20 15:42:52 -07:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-09-21 10:04:21 -07:00
|
|
|
},
|
|
|
|
{ "id": "f1040",
|
|
|
|
"file": "pdfs/f1040.pdf",
|
2011-11-21 09:26:19 -05:00
|
|
|
"md5": "b59272ce19b4a0c5808c8861441b0741",
|
2011-09-21 10:04:21 -07:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-09-22 13:17:28 -07:00
|
|
|
},
|
|
|
|
{ "id": "hudsonsurvey",
|
|
|
|
"file": "pdfs/hudsonsurvey.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "bf0e6576a7b6c2fe7485bce1b78e006f",
|
2011-09-22 13:17:28 -07:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
2011-09-24 09:44:50 -05:00
|
|
|
},
|
2011-09-23 14:37:44 -07:00
|
|
|
{ "id": "extgstate",
|
|
|
|
"file": "pdfs/extgstate.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "001bb4ec04463a01d93aad748361f049",
|
2011-09-23 14:37:44 -07:00
|
|
|
"link": false,
|
|
|
|
"rounds": 1,
|
2011-10-13 14:57:56 -07:00
|
|
|
"type": "eq"
|
2011-09-24 09:57:59 -05:00
|
|
|
},
|
2011-10-07 22:24:26 -05:00
|
|
|
{ "id": "usmanm-bad",
|
|
|
|
"file": "pdfs/usmanm-bad.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "38afb822433aaf07fc8f54807cd4f61a",
|
2011-10-07 22:24:26 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-10-01 19:01:58 -05:00
|
|
|
{ "id": "vesta-bad",
|
|
|
|
"file": "pdfs/vesta.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "0afebc109b7c17b95619ea3fab5eafe6",
|
2011-10-01 19:01:58 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
2011-12-08 19:17:24 -06:00
|
|
|
{ "id": "scan-bad",
|
|
|
|
"file": "pdfs/scan-bad.pdf",
|
|
|
|
"md5": "4cf988f01ab83f61aca57f406dfd6584",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
2011-09-24 09:44:50 -05:00
|
|
|
{ "id": "ibwa-bad",
|
|
|
|
"file": "pdfs/ibwa-bad.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "6ca059d32b74ac2688ae06f727fee755",
|
2011-09-24 09:44:50 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"skipPages": [ 16 ],
|
|
|
|
"type": "load"
|
2011-09-28 19:54:40 -05:00
|
|
|
},
|
2012-04-17 10:39:17 -07:00
|
|
|
{ "id": "mixedfonts",
|
|
|
|
"file": "pdfs/mixedfonts.pdf",
|
|
|
|
"md5": "a582b83fa1b3a25a6f13803a367c71ec",
|
|
|
|
"link": false,
|
2011-09-28 19:54:40 -05:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-10-04 08:52:15 -07:00
|
|
|
},
|
2011-10-11 19:45:55 -05:00
|
|
|
{ "id": "pal-o47",
|
|
|
|
"file": "pdfs/pal-o47.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "81ae15e539e89f0f0b41169d923b611b",
|
2011-10-11 19:45:55 -05:00
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-10-03 16:36:01 -07:00
|
|
|
{ "id": "simpletype3font",
|
|
|
|
"file": "pdfs/simpletype3font.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "b374c7543920840c61999e9e86939f99",
|
2011-10-03 16:36:01 -07:00
|
|
|
"link": false,
|
|
|
|
"rounds": 1,
|
2011-10-04 09:06:51 -07:00
|
|
|
"type": "eq"
|
2011-10-28 14:11:14 -07:00
|
|
|
},
|
2011-10-28 16:38:55 +03:00
|
|
|
{ "id": "close-path-bug",
|
|
|
|
"file": "pdfs/close-path-bug.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "48dd17ef58393857d2d038d33699cac5",
|
2011-10-28 16:38:55 +03:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-10-31 08:51:45 -07:00
|
|
|
},
|
2011-10-28 14:11:14 -07:00
|
|
|
{ "id": "alphatrans",
|
|
|
|
"file": "pdfs/alphatrans.pdf",
|
2011-11-04 09:14:52 -07:00
|
|
|
"md5": "5ca2d3da0c5f20b3a5a14e895ad24b65",
|
2011-10-28 14:11:14 -07:00
|
|
|
"link": false,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-11-09 09:39:55 -08:00
|
|
|
},
|
2011-11-11 14:44:47 -08:00
|
|
|
{ "id": "devicen",
|
|
|
|
"file": "pdfs/devicen.pdf",
|
2011-11-22 09:06:53 -08:00
|
|
|
"md5": "aac6a91725435d1376c6ff492dc5cb75",
|
2011-11-11 14:44:47 -08:00
|
|
|
"link": false,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-11-22 10:39:26 -08:00
|
|
|
},
|
2011-11-09 09:39:55 -08:00
|
|
|
{ "id": "cmykjpeg",
|
|
|
|
"file": "pdfs/cmykjpeg.pdf",
|
2011-11-22 10:39:26 -08:00
|
|
|
"md5": "85d162b48ce98503a382d96f574f70a2",
|
2011-11-09 09:39:55 -08:00
|
|
|
"link": false,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-11-29 15:47:53 -08:00
|
|
|
},
|
|
|
|
{ "id": "protectip",
|
|
|
|
"file": "pdfs/protectip.pdf",
|
|
|
|
"md5": "676e7a7b8f96d04825361832b1838a93",
|
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-11-29 22:22:30 -06:00
|
|
|
},
|
|
|
|
{ "id": "piperine",
|
|
|
|
"file": "pdfs/piperine.pdf",
|
|
|
|
"md5": "603ca43dc5732dbba1579f122958c0c2",
|
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-12-02 06:55:04 -06:00
|
|
|
},
|
|
|
|
{ "id": "issue840",
|
|
|
|
"file": "pdfs/issue840.pdf",
|
|
|
|
"md5": "20d88011dd7e3c4fb5274979094dab93",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-12-05 20:42:39 -06:00
|
|
|
},
|
2011-12-07 23:30:48 -06:00
|
|
|
{ "id": "bpl13210",
|
|
|
|
"file": "pdfs/bpl13210.pdf",
|
|
|
|
"md5": "8a08512baa9fa95378d9ad4b995947c7",
|
|
|
|
"link": true,
|
|
|
|
"pageLimit": 5,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2011-12-05 20:42:39 -06:00
|
|
|
{ "id": "tutorial",
|
|
|
|
"file": "pdfs/tutorial.pdf",
|
|
|
|
"md5": "6e122f618c27f3aa9a689423e3be6b8d",
|
|
|
|
"link": true,
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-12-06 22:33:59 -06:00
|
|
|
},
|
|
|
|
{ "id": "geothermal.pdf",
|
|
|
|
"file": "pdfs/geothermal.pdf",
|
|
|
|
"md5": "ecffc0ce38ffdf1e90dc952f186e9a91",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"pageLimit": 5,
|
|
|
|
"skipPages": [1],
|
|
|
|
"type": "eq"
|
2011-12-07 20:59:44 -06:00
|
|
|
},
|
2011-12-09 21:21:58 -06:00
|
|
|
{ "id": "issue919",
|
|
|
|
"file": "pdfs/issue919.pdf",
|
|
|
|
"md5": "3a1716a512aca4d7a8d6106bd4885d14",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"pageLimit": 3,
|
|
|
|
"type": "eq"
|
2011-12-12 15:34:11 -08:00
|
|
|
},
|
2011-12-12 21:42:39 -06:00
|
|
|
{ "id": "issue918",
|
|
|
|
"file": "pdfs/issue918.pdf",
|
|
|
|
"md5": "d582cc0f2592ae82936589ced2a47e55",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-12-14 13:41:36 -08:00
|
|
|
},
|
2012-04-23 22:14:58 -05:00
|
|
|
{ "id": "issue1586",
|
2012-04-24 18:53:11 -05:00
|
|
|
"file": "pdfs/pdfjsbad1586.pdf",
|
|
|
|
"md5": "793d0870f0b0c613799b0677d64daca4",
|
2012-04-23 22:14:58 -05:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
2011-12-12 15:34:11 -08:00
|
|
|
{ "id": "aboutstacks",
|
2011-12-12 15:09:05 -08:00
|
|
|
"file": "pdfs/aboutstacks.pdf",
|
|
|
|
"md5": "6e7c8416a293ba2d83bc8dd20c6ccf51",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2011-12-16 10:54:31 -08:00
|
|
|
},
|
|
|
|
{ "id": "smaskdim",
|
|
|
|
"file": "pdfs/smaskdim.pdf",
|
2011-12-18 17:28:25 -08:00
|
|
|
"md5": "de80aeca7cbf79940189fd34d59671ee",
|
2011-12-16 10:54:31 -08:00
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2011-12-29 12:39:00 -08:00
|
|
|
},
|
2011-12-30 09:24:13 -08:00
|
|
|
{ "id": "type4psfunc",
|
2011-12-29 12:39:00 -08:00
|
|
|
"file": "pdfs/type4psfunc.pdf",
|
|
|
|
"md5": "7e6027a02ff78577f74dccdf84e37189",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2012-01-04 19:55:04 -06:00
|
|
|
},
|
|
|
|
{ "id": "ocs",
|
|
|
|
"file": "pdfs/ocs.pdf",
|
|
|
|
"md5": "2ade57e954ae7632749cf328daeaa7a8",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "load"
|
2012-01-04 19:57:08 -06:00
|
|
|
},
|
2012-01-11 22:19:21 -06:00
|
|
|
{ "id": "issue1010",
|
|
|
|
"file": "pdfs/issue1010.pdf",
|
|
|
|
"md5": "f991ef093484a107fe9f59dff18fc155",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-05-18 11:14:09 -05:00
|
|
|
{ "id": "issue1709",
|
|
|
|
"file": "pdfs/issue1709.pdf",
|
|
|
|
"md5": "84497bd23b7c82d03d2681a1cb1d9ed0",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 10,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-01-04 14:49:37 -05:00
|
|
|
{ "id": "issue1015",
|
|
|
|
"file": "pdfs/issue1015.pdf",
|
|
|
|
"md5": "b61503d1b445742b665212866afb60e2",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-01-09 20:37:39 -06:00
|
|
|
},
|
2012-01-21 17:18:36 -06:00
|
|
|
{ "id": "issue1096",
|
|
|
|
"file": "pdfs/issue1096.pdf",
|
|
|
|
"md5": "7f75d2b4b93c78d401ff39e8c1b00612",
|
|
|
|
"rounds": 1,
|
2012-08-02 12:06:43 -07:00
|
|
|
"pageLimit": 9,
|
2012-01-21 17:18:36 -06:00
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-01-26 18:51:58 -06:00
|
|
|
{ "id": "issue1127",
|
|
|
|
"file": "pdfs/issue1127.pdf",
|
|
|
|
"md5": "4fb2be5ffefeafda4ba977de2a1bb4d8",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-02-19 20:12:57 -06:00
|
|
|
{ "id": "issue1249-load",
|
|
|
|
"file": "pdfs/issue1249.pdf",
|
|
|
|
"md5": "4f81339fa09422a7db980f34ea963609",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
|
|
|
},
|
2012-01-09 20:37:39 -06:00
|
|
|
{ "id": "liveprogramming",
|
|
|
|
"file": "pdfs/liveprogramming.pdf",
|
|
|
|
"md5": "7bd4dad1188232ef597d36fd72c33e52",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 3,
|
|
|
|
"link": true,
|
|
|
|
"type": "load"
|
2012-01-11 20:14:49 -06:00
|
|
|
},
|
|
|
|
{ "id": "S2-eq",
|
|
|
|
"file": "pdfs/S2.pdf",
|
|
|
|
"md5": "d0b6137846df6e0fe058f234a87fb588",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2012-01-18 20:14:43 -06:00
|
|
|
},
|
2012-01-17 14:40:52 -05:00
|
|
|
{ "id": "issue1055",
|
|
|
|
"file": "pdfs/issue1055.pdf",
|
|
|
|
"md5": "3ba56c2e48dce81da8669b1b9cf98ff0",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-01-17 20:50:49 -08:00
|
|
|
},
|
2012-05-17 18:34:31 -05:00
|
|
|
{ "id": "issue1629",
|
|
|
|
"file": "pdfs/issue1629.pdf",
|
|
|
|
"md5": "0f2cbbf268383a377e95e6bbe36c6a9a",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-08-11 23:05:41 -05:00
|
|
|
{ "id": "issue1685",
|
|
|
|
"file": "pdfs/issue1685.pdf",
|
|
|
|
"md5": "b22c3741e6bd0e613d3eb3325ad31f7d",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 2,
|
|
|
|
"link": true,
|
2012-05-17 18:34:31 -05:00
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-02-04 12:45:18 -06:00
|
|
|
{ "id": "issue1169",
|
|
|
|
"file": "pdfs/issue1169.pdf",
|
|
|
|
"md5": "3df3ed21fd43ac7fdb21e2015c8a7809",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-01-17 20:50:49 -08:00
|
|
|
{ "id": "zerowidthline",
|
|
|
|
"file": "pdfs/zerowidthline.pdf",
|
|
|
|
"md5": "295d26e61a85635433f8e4b768953f60",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": false,
|
|
|
|
"type": "eq"
|
2012-02-01 17:48:44 -05:00
|
|
|
},
|
2012-02-12 21:11:44 -06:00
|
|
|
{ "id": "html5checker",
|
|
|
|
"file": "pdfs/html5checker.pdf",
|
|
|
|
"md5": "74bbd80d1e7eb5f2951582233ef9ebab",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 7,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-03-01 21:23:36 -06:00
|
|
|
{ "id": "pdfkit_compressed",
|
|
|
|
"file": "pdfs/pdfkit_compressed.pdf",
|
|
|
|
"md5": "ffe9c571d0a1572e234253e6c7cdee6c",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-03-17 17:35:04 -05:00
|
|
|
{ "id": "tamreview",
|
|
|
|
"file": "pdfs/TAMReview.pdf",
|
|
|
|
"md5": "8039aba56790d3597d2bc8c794a51301",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 5,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-03-25 16:30:44 -05:00
|
|
|
{ "id": "preistabelle",
|
|
|
|
"file": "pdfs/preistabelle.pdf",
|
|
|
|
"md5": "d2f0b2086160d4f3d325c79a5dc1fb4d",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 2,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-03-19 09:09:42 -07:00
|
|
|
{ "id": "issue1350",
|
|
|
|
"file": "pdfs/issue1350.pdf",
|
|
|
|
"md5": "92f72a04a4d9d05b2dd433b51f32ab1f",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-02-19 22:12:22 -08:00
|
|
|
{ "id": "issue925",
|
|
|
|
"file": "pdfs/issue925.pdf",
|
|
|
|
"md5": "f58fe943090aff89dcc8e771bc0db4c2",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-04-04 11:50:20 -05:00
|
|
|
{ "id": "issue1466",
|
|
|
|
"file": "pdfs/issue1466.pdf",
|
|
|
|
"md5": "8a8877432e5bb10cfd50d60488d947bb",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-08-11 20:10:31 -05:00
|
|
|
{ "id": "issue1655",
|
|
|
|
"file": "pdfs/issue1655.pdf",
|
|
|
|
"md5": "696ef6de6f4f71643771419ef04fc968",
|
|
|
|
"rounds": 1,
|
2012-08-14 11:39:06 -05:00
|
|
|
"skipPages": [1, 2, 3, 4, 5, 6, 7, 8],
|
2012-08-11 20:10:31 -05:00
|
|
|
"pageLimit": 9,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-02-01 17:48:44 -05:00
|
|
|
{ "id": "issue1133",
|
|
|
|
"file": "pdfs/issue1133.pdf",
|
|
|
|
"md5": "d1b61580cb100e3df93d33703af1773a",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-02-06 16:11:52 -08:00
|
|
|
},
|
2012-08-20 15:57:21 -05:00
|
|
|
{ "id": "issue1658",
|
|
|
|
"file": "pdfs/issue1658.pdf",
|
|
|
|
"md5": "b71a0f641e83ad427b8bcfc180899a05",
|
|
|
|
"rounds": 1,
|
|
|
|
"skipPages": [1, 2, 3, 4, 5, 6, 7, 8, 9],
|
|
|
|
"pageLimit": 10,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-01-20 18:41:01 -05:00
|
|
|
{ "id": "issue1049",
|
|
|
|
"file": "pdfs/issue1049.pdf",
|
|
|
|
"md5": "15473fffcdde9fb8f3756a4cf1aab347",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-02-14 14:55:39 -05:00
|
|
|
},
|
|
|
|
{ "id": "issue1155",
|
|
|
|
"file": "pdfs/issue1155.pdf",
|
|
|
|
"md5": "b732ef25c16c9c20a77e40edef5aa6fe",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-02-18 15:01:53 -06:00
|
|
|
},
|
2012-03-10 19:12:33 -08:00
|
|
|
{ "id": "issue1002",
|
|
|
|
"file": "pdfs/issue1002.pdf",
|
|
|
|
"md5": "af62d6cd95079322d4af18edd960d15c",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": false,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-05-21 22:15:09 -05:00
|
|
|
{ "id": "issue1721",
|
|
|
|
"file": "pdfs/issue1721.pdf",
|
|
|
|
"md5": "b47177f9e5197a76ec498733ecab60e6",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 2,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-02-18 15:01:53 -06:00
|
|
|
{ "id": "issue1243",
|
|
|
|
"file": "pdfs/issue1243.pdf",
|
|
|
|
"md5": "130c849b83513d5ac5e03c6421fc7489",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 2,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-02-20 17:19:12 -06:00
|
|
|
},
|
|
|
|
{ "id": "issue1257",
|
|
|
|
"file": "pdfs/issue1257.pdf",
|
|
|
|
"md5": "9111533826bc21ed774e8e01603a2f54",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 2,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-03-17 23:13:54 -05:00
|
|
|
},
|
|
|
|
{ "id": "issue1309",
|
|
|
|
"file": "pdfs/issue1309.pdf",
|
|
|
|
"md5": "e835fb7f3dab3073ad37d0bd3c6399fa",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-06-22 05:59:53 -05:00
|
|
|
{ "id": "issue1810",
|
|
|
|
"file": "pdfs/issue1810.pdf",
|
|
|
|
"md5": "b173a9dfb7bf00e1a298c6e8cb95c03e",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 3,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-04-23 17:50:02 -05:00
|
|
|
{ "id": "issue1597",
|
|
|
|
"file": "pdfs/issue1597.pdf",
|
|
|
|
"md5": "a5ebef467fd6e2fc0aeb56c9eb725ae3",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-07-19 10:58:07 -07:00
|
|
|
{ "id": "issue1419.pdf",
|
|
|
|
"file": "pdfs/issue1419.pdf",
|
|
|
|
"md5": "b5b6c6405d7b48418bccf97277957664",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"pageLimit": 1,
|
|
|
|
"skipPages": [1],
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-03-17 23:13:54 -05:00
|
|
|
{ "id": "issue1317",
|
|
|
|
"file": "pdfs/issue1317.pdf",
|
|
|
|
"md5": "6fb46275b30c48c8985617d4f86199e3",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-03-29 08:53:51 -07:00
|
|
|
},
|
|
|
|
{ "id": "gradientfill",
|
|
|
|
"file": "pdfs/gradientfill.pdf",
|
|
|
|
"md5": "cbc1988e4803f647fa83467a85f0e231",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "eq"
|
2012-06-13 10:29:02 -07:00
|
|
|
},
|
|
|
|
{ "id": "issue1796",
|
|
|
|
"file": "pdfs/issue1796.pdf",
|
|
|
|
"md5": "9b9b60dc2a4cc3ea05932785d71304fe",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 2,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-07-11 16:29:07 -07:00
|
|
|
},
|
2012-08-11 11:57:42 -05:00
|
|
|
{ "id": "issue845",
|
|
|
|
"file": "pdfs/issue845.pdf",
|
|
|
|
"md5": "89ddf9e63cac4fa2dedcfe32a62e5407",
|
|
|
|
"rounds": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
|
|
|
},
|
2012-07-11 16:29:07 -07:00
|
|
|
{ "id": "issue818",
|
|
|
|
"file": "pdfs/issue818.pdf",
|
|
|
|
"md5": "dd2f8a5bd65164ad74da2b45a6ca90cc",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "eq"
|
2012-08-03 16:11:43 -07:00
|
|
|
},
|
|
|
|
{ "id": "issue1729",
|
|
|
|
"file": "pdfs/issue1729.pdf",
|
|
|
|
"md5": "29b0eddc3e1dcb23a44384037032d470",
|
|
|
|
"rounds": 1,
|
|
|
|
"pageLimit": 1,
|
|
|
|
"link": true,
|
|
|
|
"type": "load"
|
2012-08-16 15:22:28 -07:00
|
|
|
},
|
|
|
|
{ "id": "issue1985",
|
|
|
|
"file": "pdfs/issue1985.pdf",
|
|
|
|
"md5": "2ac7c68e26a8ef797aead15e4875cc6d",
|
|
|
|
"rounds": 1,
|
|
|
|
"type": "load"
|
Initial import of first test harness
The harness (test.py) operates as follows. First it locates executable browsers
(or symlinks or scripts) named "[browser][version]", e.g. "firefox4".
It then launches the located browsers and asks them to load the file
test_slave.html. At the same time, test.py sets up an HTTP server on
localhost:8080 (there's a race condition here currently ;). After
test_slave loads in the browser(s), it fetches the task manifest
(test_manifest.json). The entries in the manifest specify which PDF
to load and how many times to cycle through page rendering. This will
probably evolve over time. test_slave then performs the requested
tasks and POSTs the results back to test.py, which saves them. When
all the results of for a task are in, test.py checks them.
There are three types of tests currently. "==" tests compare the
rendering of a PDF against a master copy. This is not yet implemented
because setting up a master copy is complicated. "fbf" tests render
all a PDF's pages, then go back to page 1 and render all pages a
second time. The renderings from the first round must match the ones
from the second round. "load" tests just check that a PDF's pages
load without errors.
Currently the test harness will only launch a "firefox4" target. This
can be a bash script in your pdf.js checkout, pdf.js/firefox4,
something like the following
#!/bin/bash
dist="/path/to/firefox4/installation"
profile=`mktemp -dt 'pdf.js-test-ff-profile-XXXXXXXXXX'`
$dist/firefox -no-remote -profile $profile $*
rm -rf $profile
(Yes, this script doesn't clean up properly on early termination.)
It's possible to run the tests in a normal browsing session, but that
might be annoying. With that set up, run the harness like so
python test.py
If all goes well, you'll see all "TEST-PASS" messages printed to
stdout. If something goes wrong, you'll see "TEST-UNEXPECTED-FAIL"
printed to stdout.
2011-06-18 18:09:21 -07:00
|
|
|
}
|
|
|
|
]
|