diff --git a/pdf-handbuilt-test-corpus/README.md b/pdf-handbuilt-test-corpus/README.md new file mode 100644 index 0000000..052b753 --- /dev/null +++ b/pdf-handbuilt-test-corpus/README.md @@ -0,0 +1,10 @@ +## About this folder + +This folder contains a handbuilt PDF set created as part of an ipres2017 paper. +The data set presents a corpus of light-weight files designed to test the validation criteria of JHOVE's PDF module against "well-formedness". Test cases are based on structural requirements for PDF files as per ISO 32000-1:2008 standard. It currently only tests against 88 different cases. + +Further information on the testset: +https://dx.doi.org/10.22000/53 + +Link to paper: +https://hdl.handle.net/11353/10.931074 \ No newline at end of file diff --git a/pdf-handbuilt-test-corpus/T01_001_header-invalid-major-version.pdf b/pdf-handbuilt-test-corpus/T01_001_header-invalid-major-version.pdf new file mode 100644 index 0000000..386522e Binary files /dev/null and b/pdf-handbuilt-test-corpus/T01_001_header-invalid-major-version.pdf differ diff --git a/pdf-handbuilt-test-corpus/T01_002_header-invalid-minor-version.pdf b/pdf-handbuilt-test-corpus/T01_002_header-invalid-minor-version.pdf new file mode 100644 index 0000000..1bd3557 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T01_002_header-invalid-minor-version.pdf differ diff --git a/pdf-handbuilt-test-corpus/T01_003_header-no-minor-version.pdf b/pdf-handbuilt-test-corpus/T01_003_header-no-minor-version.pdf new file mode 100644 index 0000000..a7af3f1 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T01_003_header-no-minor-version.pdf differ diff --git a/pdf-handbuilt-test-corpus/T01_004_header_invalid-syntax-no-dash.pdf b/pdf-handbuilt-test-corpus/T01_004_header_invalid-syntax-no-dash.pdf new file mode 100644 index 0000000..ed9da17 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T01_004_header_invalid-syntax-no-dash.pdf differ diff --git a/pdf-handbuilt-test-corpus/T01_005_header-invalid-syntax-replace-char.pdf b/pdf-handbuilt-test-corpus/T01_005_header-invalid-syntax-replace-char.pdf new file mode 100644 index 0000000..5073343 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T01_005_header-invalid-syntax-replace-char.pdf differ diff --git a/pdf-handbuilt-test-corpus/T01_006_header-invalid-syntax-no-pdf.pdf b/pdf-handbuilt-test-corpus/T01_006_header-invalid-syntax-no-pdf.pdf new file mode 100644 index 0000000..847a830 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T01_006_header-invalid-syntax-no-pdf.pdf differ diff --git a/pdf-handbuilt-test-corpus/T01_007_header-no-version-info.pdf b/pdf-handbuilt-test-corpus/T01_007_header-no-version-info.pdf new file mode 100644 index 0000000..92d26f7 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T01_007_header-no-version-info.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-01_001_document-catalog-No-document-catalog.pdf b/pdf-handbuilt-test-corpus/T02-01_001_document-catalog-No-document-catalog.pdf new file mode 100644 index 0000000..5acd3dc Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-01_001_document-catalog-No-document-catalog.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-01_002_document-catalog-wrong-object-number.pdf b/pdf-handbuilt-test-corpus/T02-01_002_document-catalog-wrong-object-number.pdf new file mode 100644 index 0000000..3cc9310 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-01_002_document-catalog-wrong-object-number.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-01_003_document-catalog-indirecte-pages-reference-missing.pdf b/pdf-handbuilt-test-corpus/T02-01_003_document-catalog-indirecte-pages-reference-missing.pdf new file mode 100644 index 0000000..eea8ffe Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-01_003_document-catalog-indirecte-pages-reference-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-01_004_document-catalog-incorrect-pages-reference.pdf b/pdf-handbuilt-test-corpus/T02-01_004_document-catalog-incorrect-pages-reference.pdf new file mode 100644 index 0000000..64e4ab0 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-01_004_document-catalog-incorrect-pages-reference.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-01_005_document-catalog-type-key-missing.pdf b/pdf-handbuilt-test-corpus/T02-01_005_document-catalog-type-key-missing.pdf new file mode 100644 index 0000000..77c3360 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-01_005_document-catalog-type-key-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-01_006_document-catalog-wrong-type-key.pdf b/pdf-handbuilt-test-corpus/T02-01_006_document-catalog-wrong-type-key.pdf new file mode 100644 index 0000000..7c1a8eb Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-01_006_document-catalog-wrong-type-key.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-01_007_document-catalog-type-key-value-pair-missing.pdf b/pdf-handbuilt-test-corpus/T02-01_007_document-catalog-type-key-value-pair-missing.pdf new file mode 100644 index 0000000..e345d4c Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-01_007_document-catalog-type-key-value-pair-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_001_no-page-tree-node.pdf b/pdf-handbuilt-test-corpus/T02-02_001_no-page-tree-node.pdf new file mode 100644 index 0000000..a6c7d80 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_001_no-page-tree-node.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_002_page-tree-kids-links-recursive.pdf b/pdf-handbuilt-test-corpus/T02-02_002_page-tree-kids-links-recursive.pdf new file mode 100644 index 0000000..ccec6e4 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_002_page-tree-kids-links-recursive.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_003_page-tree-different-kids.pdf b/pdf-handbuilt-test-corpus/T02-02_003_page-tree-different-kids.pdf new file mode 100644 index 0000000..2193694 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_003_page-tree-different-kids.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_004_page-tree-non-existing-object-as-kid.pdf b/pdf-handbuilt-test-corpus/T02-02_004_page-tree-non-existing-object-as-kid.pdf new file mode 100644 index 0000000..ad0afed Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_004_page-tree-non-existing-object-as-kid.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_005_page-tree-no-kids.pdf b/pdf-handbuilt-test-corpus/T02-02_005_page-tree-no-kids.pdf new file mode 100644 index 0000000..46af0b7 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_005_page-tree-no-kids.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_006_page-tree-no-type.pdf b/pdf-handbuilt-test-corpus/T02-02_006_page-tree-no-type.pdf new file mode 100644 index 0000000..d67a8c6 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_006_page-tree-no-type.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_007_page-tree-wrong-count.pdf b/pdf-handbuilt-test-corpus/T02-02_007_page-tree-wrong-count.pdf new file mode 100644 index 0000000..fd83684 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_007_page-tree-wrong-count.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_008_page-tree-node-no-count.pdf b/pdf-handbuilt-test-corpus/T02-02_008_page-tree-node-no-count.pdf new file mode 100644 index 0000000..9131c3d Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_008_page-tree-node-no-count.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-02_009_page-tree-wrong-type.pdf b/pdf-handbuilt-test-corpus/T02-02_009_page-tree-wrong-type.pdf new file mode 100644 index 0000000..7a1ff83 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-02_009_page-tree-wrong-type.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_001_page-object-no-type.pdf b/pdf-handbuilt-test-corpus/T02-03_001_page-object-no-type.pdf new file mode 100644 index 0000000..9762b9b Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_001_page-object-no-type.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_002_page-object-wrong-type.pdf b/pdf-handbuilt-test-corpus/T02-03_002_page-object-wrong-type.pdf new file mode 100644 index 0000000..acacf92 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_002_page-object-wrong-type.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_003_page-object-no-parent.pdf b/pdf-handbuilt-test-corpus/T02-03_003_page-object-no-parent.pdf new file mode 100644 index 0000000..e50cab9 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_003_page-object-no-parent.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_004_page-object-wrong-parent.pdf b/pdf-handbuilt-test-corpus/T02-03_004_page-object-wrong-parent.pdf new file mode 100644 index 0000000..4aab7c2 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_004_page-object-wrong-parent.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_005_page-object-parent-contains-array.pdf b/pdf-handbuilt-test-corpus/T02-03_005_page-object-parent-contains-array.pdf new file mode 100644 index 0000000..ce72547 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_005_page-object-parent-contains-array.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_006_page-object-missing.pdf b/pdf-handbuilt-test-corpus/T02-03_006_page-object-missing.pdf new file mode 100644 index 0000000..01591bb Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_006_page-object-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_007_page-object-resources-wrong-object.pdf b/pdf-handbuilt-test-corpus/T02-03_007_page-object-resources-wrong-object.pdf new file mode 100644 index 0000000..d3ceada Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_007_page-object-resources-wrong-object.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_008_page-object-mediabox-missing.pdf b/pdf-handbuilt-test-corpus/T02-03_008_page-object-mediabox-missing.pdf new file mode 100644 index 0000000..a996ea1 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_008_page-object-mediabox-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_009_page-object-mediabox-not-rectangle.pdf b/pdf-handbuilt-test-corpus/T02-03_009_page-object-mediabox-not-rectangle.pdf new file mode 100644 index 0000000..37946d6 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_009_page-object-mediabox-not-rectangle.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_010_page-object-missing-contents.pdf b/pdf-handbuilt-test-corpus/T02-03_010_page-object-missing-contents.pdf new file mode 100644 index 0000000..f282f06 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_010_page-object-missing-contents.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_011_page-object-wrong-contents-reference.pdf b/pdf-handbuilt-test-corpus/T02-03_011_page-object-wrong-contents-reference.pdf new file mode 100644 index 0000000..ae4ae5e Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_011_page-object-wrong-contents-reference.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-03_012_page-object-resources-missing.pdf b/pdf-handbuilt-test-corpus/T02-03_012_page-object-resources-missing.pdf new file mode 100644 index 0000000..740d6d8 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-03_012_page-object-resources-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-04-01_001_resources-basefont-missing.pdf b/pdf-handbuilt-test-corpus/T02-04-01_001_resources-basefont-missing.pdf new file mode 100644 index 0000000..7bd1f39 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-04-01_001_resources-basefont-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-04-01_002_resources-basefont-wrong-font.pdf b/pdf-handbuilt-test-corpus/T02-04-01_002_resources-basefont-wrong-font.pdf new file mode 100644 index 0000000..c207354 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-04-01_002_resources-basefont-wrong-font.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-04-01_003_resources-type-missing.pdf b/pdf-handbuilt-test-corpus/T02-04-01_003_resources-type-missing.pdf new file mode 100644 index 0000000..49cb0bf Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-04-01_003_resources-type-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-04-01_004_resources-wrong-declaration-type.pdf b/pdf-handbuilt-test-corpus/T02-04-01_004_resources-wrong-declaration-type.pdf new file mode 100644 index 0000000..207ed14 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-04-01_004_resources-wrong-declaration-type.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-04-01_005_resources-subtype-missing.pdf b/pdf-handbuilt-test-corpus/T02-04-01_005_resources-subtype-missing.pdf new file mode 100644 index 0000000..07f770f Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-04-01_005_resources-subtype-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-04-01_006_resources_subtype_wrong.pdf b/pdf-handbuilt-test-corpus/T02-04-01_006_resources_subtype_wrong.pdf new file mode 100644 index 0000000..837bc4f Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-04-01_006_resources_subtype_wrong.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_001_Stream-BT-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_001_Stream-BT-missing.pdf new file mode 100644 index 0000000..0019310 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_001_Stream-BT-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_002_Stream-ET-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_002_Stream-ET-missing.pdf new file mode 100644 index 0000000..09f54f4 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_002_Stream-ET-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_003_Stream-BT-and-ET-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_003_Stream-BT-and-ET-missing.pdf new file mode 100644 index 0000000..b0c32ef Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_003_Stream-BT-and-ET-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_004_Font-name-operator--missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_004_Font-name-operator--missing.pdf new file mode 100644 index 0000000..6af0270 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_004_Font-name-operator--missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_005_invalid-Font-name-operator.pdf b/pdf-handbuilt-test-corpus/T02-05-01_005_invalid-Font-name-operator.pdf new file mode 100644 index 0000000..af6a6b6 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_005_invalid-Font-name-operator.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_006_font-size-operator-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_006_font-size-operator-missing.pdf new file mode 100644 index 0000000..542f285 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_006_font-size-operator-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_007_invalid-font-size-operator.pdf b/pdf-handbuilt-test-corpus/T02-05-01_007_invalid-font-size-operator.pdf new file mode 100644 index 0000000..90d80c8 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_007_invalid-font-size-operator.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_008_Font-set-operator-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_008_Font-set-operator-missing.pdf new file mode 100644 index 0000000..dd48912 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_008_Font-set-operator-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_009_Missing_open_paranthesis.pdf b/pdf-handbuilt-test-corpus/T02-05-01_009_Missing_open_paranthesis.pdf new file mode 100644 index 0000000..1402b4d Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_009_Missing_open_paranthesis.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_010_Missing_closing_paranthesis.pdf b/pdf-handbuilt-test-corpus/T02-05-01_010_Missing_closing_paranthesis.pdf new file mode 100644 index 0000000..4f1051f Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_010_Missing_closing_paranthesis.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_011_paranthesis-substituted-with-brackets.pdf b/pdf-handbuilt-test-corpus/T02-05-01_011_paranthesis-substituted-with-brackets.pdf new file mode 100644 index 0000000..c152a67 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_011_paranthesis-substituted-with-brackets.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_012_text-show-operator-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_012_text-show-operator-missing.pdf new file mode 100644 index 0000000..392c69f Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_012_text-show-operator-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_013_stream-keyword-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_013_stream-keyword-missing.pdf new file mode 100644 index 0000000..1ba5a73 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_013_stream-keyword-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_014_endstream-keyword-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_014_endstream-keyword-missing.pdf new file mode 100644 index 0000000..d5880da Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_014_endstream-keyword-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_015_invalid-stream-length-in-dictionary.pdf b/pdf-handbuilt-test-corpus/T02-05-01_015_invalid-stream-length-in-dictionary.pdf new file mode 100644 index 0000000..a58b553 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_015_invalid-stream-length-in-dictionary.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_016_stream-length-missing-in-dictionary.pdf b/pdf-handbuilt-test-corpus/T02-05-01_016_stream-length-missing-in-dictionary.pdf new file mode 100644 index 0000000..1ab9e5b Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_016_stream-length-missing-in-dictionary.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_017_bytes-between-endstream-endobj.pdf b/pdf-handbuilt-test-corpus/T02-05-01_017_bytes-between-endstream-endobj.pdf new file mode 100644 index 0000000..da75f93 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_017_bytes-between-endstream-endobj.pdf differ diff --git a/pdf-handbuilt-test-corpus/T02-05-01_018_position-information-missing.pdf b/pdf-handbuilt-test-corpus/T02-05-01_018_position-information-missing.pdf new file mode 100644 index 0000000..d3bb944 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T02-05-01_018_position-information-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_001_no-cross-reference-table.pdf b/pdf-handbuilt-test-corpus/T03_001_no-cross-reference-table.pdf new file mode 100644 index 0000000..d99a8c8 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_001_no-cross-reference-table.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_002_xref-keyword-missing.pdf b/pdf-handbuilt-test-corpus/T03_002_xref-keyword-missing.pdf new file mode 100644 index 0000000..0da10ee Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_002_xref-keyword-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_003_number-of-entries-missing.pdf b/pdf-handbuilt-test-corpus/T03_003_number-of-entries-missing.pdf new file mode 100644 index 0000000..367927d Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_003_number-of-entries-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_004_number-of-entries-too-many.pdf b/pdf-handbuilt-test-corpus/T03_004_number-of-entries-too-many.pdf new file mode 100644 index 0000000..37a3688 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_004_number-of-entries-too-many.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_005_number-of-entries-too-few.pdf b/pdf-handbuilt-test-corpus/T03_005_number-of-entries-too-few.pdf new file mode 100644 index 0000000..58525c5 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_005_number-of-entries-too-few.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_006_offset_missing.pdf b/pdf-handbuilt-test-corpus/T03_006_offset_missing.pdf new file mode 100644 index 0000000..46ff5d4 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_006_offset_missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_007_offset_wrong.pdf b/pdf-handbuilt-test-corpus/T03_007_offset_wrong.pdf new file mode 100644 index 0000000..2ab5c35 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_007_offset_wrong.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_008_entry-offset-too-short.pdf b/pdf-handbuilt-test-corpus/T03_008_entry-offset-too-short.pdf new file mode 100644 index 0000000..e659307 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_008_entry-offset-too-short.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_009_invalid-keyword-entry.pdf b/pdf-handbuilt-test-corpus/T03_009_invalid-keyword-entry.pdf new file mode 100644 index 0000000..a8581ac Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_009_invalid-keyword-entry.pdf differ diff --git a/pdf-handbuilt-test-corpus/T03_010_wrong-generation-number.pdf b/pdf-handbuilt-test-corpus/T03_010_wrong-generation-number.pdf new file mode 100644 index 0000000..7bf0c94 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T03_010_wrong-generation-number.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_001_EOF-not-standalone.pdf b/pdf-handbuilt-test-corpus/T04_001_EOF-not-standalone.pdf new file mode 100644 index 0000000..4f7d8cb Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_001_EOF-not-standalone.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_002_EOF-missing.pdf b/pdf-handbuilt-test-corpus/T04_002_EOF-missing.pdf new file mode 100644 index 0000000..b32c999 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_002_EOF-missing.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_003_EOF-incomplete-EO.pdf b/pdf-handbuilt-test-corpus/T04_003_EOF-incomplete-EO.pdf new file mode 100644 index 0000000..0074fdf Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_003_EOF-incomplete-EO.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_004_EOF-incomplete_EOF.pdf b/pdf-handbuilt-test-corpus/T04_004_EOF-incomplete_EOF.pdf new file mode 100644 index 0000000..ae3f8c0 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_004_EOF-incomplete_EOF.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_005_EOF-followed-by-junk-data.pdf b/pdf-handbuilt-test-corpus/T04_005_EOF-followed-by-junk-data.pdf new file mode 100644 index 0000000..da85e80 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_005_EOF-followed-by-junk-data.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_006_premature-EOF.pdf b/pdf-handbuilt-test-corpus/T04_006_premature-EOF.pdf new file mode 100644 index 0000000..eb21b5d Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_006_premature-EOF.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_007_premature-EOF-only.pdf b/pdf-handbuilt-test-corpus/T04_007_premature-EOF-only.pdf new file mode 100644 index 0000000..9489a14 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_007_premature-EOF-only.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_008_trailer-no-trailer-keyword.pdf b/pdf-handbuilt-test-corpus/T04_008_trailer-no-trailer-keyword.pdf new file mode 100644 index 0000000..23124eb Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_008_trailer-no-trailer-keyword.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_009_trailer-no-opening-brackets.pdf b/pdf-handbuilt-test-corpus/T04_009_trailer-no-opening-brackets.pdf new file mode 100644 index 0000000..ffc55e2 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_009_trailer-no-opening-brackets.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_010_trailer-no-closing-brackets.pdf b/pdf-handbuilt-test-corpus/T04_010_trailer-no-closing-brackets.pdf new file mode 100644 index 0000000..10966ce Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_010_trailer-no-closing-brackets.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_011_trailer-no-root-key-value-pair.pdf b/pdf-handbuilt-test-corpus/T04_011_trailer-no-root-key-value-pair.pdf new file mode 100644 index 0000000..d3cebd4 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_011_trailer-no-root-key-value-pair.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_012_trailer-root-no-indirect-reference.pdf b/pdf-handbuilt-test-corpus/T04_012_trailer-root-no-indirect-reference.pdf new file mode 100644 index 0000000..8df3b96 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_012_trailer-root-no-indirect-reference.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_013_trailer-root-invalid-indirect-reference.pdf b/pdf-handbuilt-test-corpus/T04_013_trailer-root-invalid-indirect-reference.pdf new file mode 100644 index 0000000..bd105b1 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_013_trailer-root-invalid-indirect-reference.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_014_trailer-root-indirect-reference-to-wrong-object.pdf b/pdf-handbuilt-test-corpus/T04_014_trailer-root-indirect-reference-to-wrong-object.pdf new file mode 100644 index 0000000..18caa28 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_014_trailer-root-indirect-reference-to-wrong-object.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_015_trailer-no-size-key-value-pair.pdf b/pdf-handbuilt-test-corpus/T04_015_trailer-no-size-key-value-pair.pdf new file mode 100644 index 0000000..963ceb5 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_015_trailer-no-size-key-value-pair.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_016_trailer-wrong-size-key-value-pair.pdf b/pdf-handbuilt-test-corpus/T04_016_trailer-wrong-size-key-value-pair.pdf new file mode 100644 index 0000000..3000b13 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_016_trailer-wrong-size-key-value-pair.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_017_trailer-no-startxref-keyword.pdf b/pdf-handbuilt-test-corpus/T04_017_trailer-no-startxref-keyword.pdf new file mode 100644 index 0000000..8daeb57 Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_017_trailer-no-startxref-keyword.pdf differ diff --git a/pdf-handbuilt-test-corpus/T04_018_trailer-no-xref-byte-offset.pdf b/pdf-handbuilt-test-corpus/T04_018_trailer-no-xref-byte-offset.pdf new file mode 100644 index 0000000..4a9618f Binary files /dev/null and b/pdf-handbuilt-test-corpus/T04_018_trailer-no-xref-byte-offset.pdf differ diff --git a/pdf-handbuilt-test-corpus/hello_world.pdf b/pdf-handbuilt-test-corpus/hello_world.pdf new file mode 100644 index 0000000..962c265 Binary files /dev/null and b/pdf-handbuilt-test-corpus/hello_world.pdf differ diff --git a/pdf-handbuilt-test-corpus/minimal_test.pdf b/pdf-handbuilt-test-corpus/minimal_test.pdf new file mode 100644 index 0000000..7524650 Binary files /dev/null and b/pdf-handbuilt-test-corpus/minimal_test.pdf differ