aboutsummaryrefslogtreecommitdiffstats
path: root/qpdf/qtest/qpdf-json.test
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2022-05-19 23:27:41 +0200
committerJay Berkenbilt <ejb@ql.org>2022-05-20 15:16:25 +0200
commit6c5e590673331aa685afe8aa997b0b7e64996004 (patch)
tree66f14ee6b4a5bb6bc1f6bfa006d40ec9c8760b74 /qpdf/qtest/qpdf-json.test
parent6f43bf8de36b08c55b172b4f4133c79657651666 (diff)
downloadqpdf-6c5e590673331aa685afe8aa997b0b7e64996004.tar.zst
Rename all test files: _ to -
Diffstat (limited to 'qpdf/qtest/qpdf-json.test')
-rw-r--r--qpdf/qtest/qpdf-json.test50
1 files changed, 50 insertions, 0 deletions
diff --git a/qpdf/qtest/qpdf-json.test b/qpdf/qtest/qpdf-json.test
new file mode 100644
index 00000000..dbb0c70d
--- /dev/null
+++ b/qpdf/qtest/qpdf-json.test
@@ -0,0 +1,50 @@
+#!/usr/bin/env perl
+require 5.008;
+use warnings;
+use strict;
+
+unshift(@INC, '.');
+require qpdf_test_helpers;
+
+chdir("qpdf") or die "chdir testdir failed: $!\n";
+
+require TestDriver;
+
+cleanup();
+
+my $td = new TestDriver('qpdf-json');
+
+my $n_tests = 0;
+
+my @badfiles = (
+ 'no-qpdf-object',
+ 'no-pdf-version',
+ 'top-level-scalar',
+ 'bad-pdf-version1',
+ 'bad-pdf-version2',
+ 'top-level-array',
+ 'objects-not-dict',
+ 'bad-object-key',
+ 'object-not-dict',
+ 'stream-not-dict',
+ 'stream-dict-not-dict',
+ 'trailer-not-dict',
+ 'trailer-stream',
+ 'missing-trailer',
+ 'missing-objects',
+ 'obj-key-errors',
+ );
+
+$n_tests += scalar(@badfiles);
+
+foreach my $f (@badfiles)
+{
+ $td->runtest("bad: $f",
+ {$td->COMMAND =>
+ "qpdf --json-input qjson-$f.json a.pdf"},
+ {$td->FILE => "qjson-$f.out", $td->EXIT_STATUS => 2},
+ $td->NORMALIZE_NEWLINES);
+}
+
+cleanup();
+$td->report($n_tests);