summaryrefslogtreecommitdiffstats
path: root/qpdf/qtest
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2010-08-05 23:06:49 +0200
committerJay Berkenbilt <ejb@ql.org>2010-08-05 23:06:49 +0200
commit2dbc1006fb4a176c6ca7418f6e6e27251a4b8142 (patch)
tree5b07158569cb28723ab37e43c727bc1df518cb3c /qpdf/qtest
parentc29244296258b543edb3b276179c7d7444f65089 (diff)
downloadqpdf-2dbc1006fb4a176c6ca7418f6e6e27251a4b8142.tar.zst
addPageContents
git-svn-id: svn+q:///qpdf/trunk@995 71b93d88-0707-0410-a8cf-f5a4172ac649
Diffstat (limited to 'qpdf/qtest')
-rw-r--r--qpdf/qtest/qpdf.test52
-rw-r--r--qpdf/qtest/qpdf/add-contents.pdf54
2 files changed, 86 insertions, 20 deletions
diff --git a/qpdf/qtest/qpdf.test b/qpdf/qtest/qpdf.test
index d40822cd..7d14722e 100644
--- a/qpdf/qtest/qpdf.test
+++ b/qpdf/qtest/qpdf.test
@@ -76,26 +76,8 @@ flush_tiff_cache();
show_ntests();
# ----------
-$td->notify("--- Miscellaneous Tests ---");
-$n_tests += 28;
-
-$td->runtest("qpdf version",
- {$td->COMMAND => "qpdf --version"},
- {$td->REGEXP => "qpdf version \\S+\n.*", $td->EXIT_STATUS => 0},
- $td->NORMALIZE_NEWLINES);
-$td->runtest("C API: qpdf version",
- {$td->COMMAND => "qpdf-ctest --version"},
- {$td->REGEXP => "qpdf-ctest version \\S+\n",
- $td->EXIT_STATUS => 0},
- $td->NORMALIZE_NEWLINES);
-
-foreach (my $i = 1; $i <= 3; ++$i)
-{
- $td->runtest("misc tests",
- {$td->COMMAND => "test_driver 5 misc-$i.pdf"},
- {$td->FILE => "misc-$i.out", $td->EXIT_STATUS => 0},
- $td->NORMALIZE_NEWLINES);
-}
+$td->notify("--- Stream Replacement Tests ---");
+$n_tests += 8;
$td->runtest("replace stream data",
{$td->COMMAND => "test_driver 7 qstream.pdf"},
@@ -118,6 +100,36 @@ $td->runtest("new streams",
$td->runtest("new stream",
{$td->FILE => "a.pdf"},
{$td->FILE => "new-streams.pdf"});
+$td->runtest("add page contents",
+ {$td->COMMAND => "test_driver 10 minimal.pdf"},
+ {$td->STRING => "test 10 done\n", $td->EXIT_STATUS => 0},
+ $td->NORMALIZE_NEWLINES);
+$td->runtest("new stream",
+ {$td->FILE => "a.pdf"},
+ {$td->FILE => "add-contents.pdf"});
+
+show_ntests();
+# ----------
+$td->notify("--- Miscellaneous Tests ---");
+$n_tests += 22;
+
+$td->runtest("qpdf version",
+ {$td->COMMAND => "qpdf --version"},
+ {$td->REGEXP => "qpdf version \\S+\n.*", $td->EXIT_STATUS => 0},
+ $td->NORMALIZE_NEWLINES);
+$td->runtest("C API: qpdf version",
+ {$td->COMMAND => "qpdf-ctest --version"},
+ {$td->REGEXP => "qpdf-ctest version \\S+\n",
+ $td->EXIT_STATUS => 0},
+ $td->NORMALIZE_NEWLINES);
+
+foreach (my $i = 1; $i <= 3; ++$i)
+{
+ $td->runtest("misc tests",
+ {$td->COMMAND => "test_driver 5 misc-$i.pdf"},
+ {$td->FILE => "misc-$i.out", $td->EXIT_STATUS => 0},
+ $td->NORMALIZE_NEWLINES);
+}
# Make sure we ignore decode parameters that we don't understand
$td->runtest("unknown decode parameters",
diff --git a/qpdf/qtest/qpdf/add-contents.pdf b/qpdf/qtest/qpdf/add-contents.pdf
new file mode 100644
index 00000000..06b683ac
--- /dev/null
+++ b/qpdf/qtest/qpdf/add-contents.pdf
@@ -0,0 +1,54 @@
+%PDF-1.3
+%¿÷¢þ
+1 0 obj
+<< /Pages 2 0 R /Type /Catalog >>
+endobj
+2 0 obj
+<< /Count 1 /Kids [ 3 0 R ] /Type /Pages >>
+endobj
+3 0 obj
+<< /Contents [ 4 0 R 5 0 R 6 0 R ] /MediaBox [ 0 0 612 792 ] /Parent 2 0 R /Resources << /Font << /F1 7 0 R >> /ProcSet 8 0 R >> /Type /Page >>
+endobj
+4 0 obj
+<< /Length 37 >>
+stream
+BT /F1 12 Tf 72 620 Td (Baked) Tj ET
+endstream
+endobj
+5 0 obj
+<< /Length 44 >>
+stream
+BT
+ /F1 24 Tf
+ 72 720 Td
+ (Potato) Tj
+ET
+endstream
+endobj
+6 0 obj
+<< /Length 38 >>
+stream
+BT /F1 18 Tf 72 520 Td (Mashed) Tj ET
+endstream
+endobj
+7 0 obj
+<< /BaseFont /Helvetica /Encoding /WinAnsiEncoding /Name /F1 /Subtype /Type1 /Type /Font >>
+endobj
+8 0 obj
+[ /PDF /Text ]
+endobj
+xref
+0 9
+0000000000 65535 f
+0000000015 00000 n
+0000000064 00000 n
+0000000123 00000 n
+0000000282 00000 n
+0000000368 00000 n
+0000000461 00000 n
+0000000548 00000 n
+0000000655 00000 n
+trailer << /Root 1 0 R /Size 9 /ID [<31415926535897932384626433832795><31415926535897932384626433832795>] >>
+startxref
+685
+%%EOF