test(fixtures): restore malformed PDF corpus, commit so it is durable

The 12 synthetic malformed fixtures (generate_test_corpus.py output, tracked in
PROVENANCE.md) existed only as untracked files and were swept by a cleanup stash,
breaking the provenance pre-commit hook for all commits. Restore from stash and
commit them as tracked files so they cannot be lost again.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
jedarden 2026-05-21 23:53:33 -04:00
parent 2251f8a9c0
commit bcdc2adea3
13 changed files with 156 additions and 0 deletions

View file

@ -0,0 +1,36 @@
%PDF-1.4
1 0 obj
<<
/Type /Catalog
/Pages 2 0 obj
>>
endobj
2 0 obj
<<
/Type /Pages
/Kids [3 0 R]
/Count 1
>>
endobj
3 0 obj
<<
/Type /Page
/Parent 2 0 obj
/MediaBox [0 0 612 792]
/Contents 1 0 R
>>
endobj
xref
0 4
0000000000 65535 f
0000000009 00000 n
0000000058 00000 n
0000000115 00000 n
trailer
<<
/Size 4
/Root 1 0 obj
>>
startxref
201
%%EOF

View file

@ -0,0 +1,35 @@
%PDF-1.4
1 0 obj
<<
/Type /Catalog
/Pages 2 0 obj
>>
endobj
2 0 obj
<<
/Type /Pages
/Kids [3 0 R]
/Count 1
>>
endobj
3 0 obj
<<
/Type /Page
/Parent 2 0 obj
>>
endobj
xref
INVALID DATA HERE
0 4
0000000000 65535 f
0000000009 00000 n
0000000058 00000 n
0000000115 00000 n
trailer
<<
/Size 4
/Root 1 0 obj
>>
startxref
999999999
%%EOF

1
tests/fixtures/malformed/empty.pdf vendored Normal file
View file

@ -0,0 +1 @@
%PDF-1.4

View file

@ -0,0 +1,2 @@
%PDF-1.4
[ /Item1 /Item2 /Item3

View file

@ -0,0 +1,3 @@
%PDF-1.4
<< /UnclosedDictionary
/Key1 /Value1

View file

@ -0,0 +1,7 @@
%PDF-1.4
1 0 obj
<<
/Type /Catalog
/Data <48656c6c6f20576f726c6421
>>
endobj

View file

@ -0,0 +1,6 @@
%PDF-1.4
9999999999 9999999999 obj
<<
/Type /Catalog
>>
endobj

View file

@ -0,0 +1,7 @@
%PDF-1.4
1 0 obj
<<
/Type#20With#20Hex#20Escapes /Value
/NameWith#InvalidHex
>>
endobj

View file

@ -0,0 +1,14 @@
%PDF-1.4
1 0 obj
<<
/Type /Catalog
/Contents 2 0 R
>>
endobj
2 0 obj
<<
/Length 10
>>
stream
INVALID STREAM DATA
endobj

View file

@ -0,0 +1,7 @@
%PDF-1.4
1 0 obj
<<
/Type /Catalog
/Subject (This string has an unclosed parenthesis
>>
endobj

View file

@ -0,0 +1,7 @@
%PDF-1.4
1 0 obj
<<
/Int 999999999999999999999999999999
/Real 999999999999999999999999999999.999
>>
endobj

View file

@ -0,0 +1,3 @@
\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f
\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f
\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f

View file

@ -0,0 +1,28 @@
%PDF-1.4
1 0 obj
<<
/Type /Catalog
/Pages 2 0 obj
>>
endobj
2 0 obj
<<
/Type /Pages
/Kids [3 0 R]
/Count 1
>>
endobj
3 0 obj
<<
/Type /Page
/Parent 2 0 obj
/MediaBox [0 0 612 792]
/Contents 4 0 R
>>
endobj
4 0 obj
<<
/Length 50000000
/Filter /FlateDecode
>>
stream