diff options
author | Jay Berkenbilt <ejb@ql.org> | 2008-04-29 14:55:25 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2008-04-29 14:55:25 +0200 |
commit | 9a0b88bf7777c153dc46ace22db74ef24d51583a (patch) | |
tree | f567ac1cf2bf5071a611eb49323a935b6ac938ff /examples/qtest/mod-info.test | |
download | qpdf-9a0b88bf7777c153dc46ace22db74ef24d51583a.tar.zst |
update release date to actual daterelease-qpdf-2.0
git-svn-id: svn+q:///qpdf/trunk@599 71b93d88-0707-0410-a8cf-f5a4172ac649
Diffstat (limited to 'examples/qtest/mod-info.test')
-rw-r--r-- | examples/qtest/mod-info.test | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/examples/qtest/mod-info.test b/examples/qtest/mod-info.test new file mode 100644 index 00000000..83cc3ba0 --- /dev/null +++ b/examples/qtest/mod-info.test @@ -0,0 +1,93 @@ +#!/usr/bin/env perl +require 5.008; +BEGIN { $^W = 1; } +use strict; +use File::Copy; + +chdir("mod-info"); + +require TestDriver; + +my $td = new TestDriver('pdf-mod-info'); + +my $prg = "pdf-mod-info"; +my $qpdf = $ENV{'QPDF_BIN'} or die; + +cleanup(); + +$td->runtest("usage #1", + {$td->COMMAND => "$prg -in target.pdf"}, + {$td->FILE => "usage.out", + $td->EXIT_STATUS => 2}); + +$td->runtest("usage #2", + {$td->COMMAND => "$prg -key abc -val def"}, + {$td->FILE => "usage.out", + $td->EXIT_STATUS => 2}); + +$td->runtest("usage #3", + {$td->COMMAND => "$prg -key abc -val def abc"}, + {$td->FILE => "usage.out", + $td->EXIT_STATUS => 2}); + +$td->runtest("usage #4", + {$td->COMMAND => "$prg -in source1.pdf -key /date -val 01/01/01 -val 12/12/12"}, + {$td->FILE => "usage.out", + $td->EXIT_STATUS => 2}); + +$td->runtest("dump #1", + {$td->COMMAND => "$prg --dump -in files/source1.pdf"}, + {$td->FILE => "dump.out", + $td->EXIT_STATUS => 0}); + +$td->runtest("dump #2", + {$td->COMMAND => "$prg --dump -in files/no-info.pdf"}, + {$td->STRING => "", + $td->EXIT_STATUS => 0}); + +$td->runtest("dump #3", + {$td->COMMAND => "$prg --dump -in files/empty-info.pdf"}, + {$td->STRING => "", + $td->EXIT_STATUS => 0}); + +run_and_cmp("modify Subject", + "$prg -in files/source1.pdf -out out.pdf -key /Subject " . + "-val \"Export Business\"", + "", "out.pdf", "files/1.qdf"); + +run_and_cmp("add Subject, remove Producer, modify CreationDate", + "$prg -in files/source2.pdf -out out.pdf -key /Subject " . + "-val \"Tammlin\" -key /Producer -key /CreationDate -val 12/12", + "", "out.pdf", "files/2.qdf"); + +run_and_cmp("add Subject (empty-info file)", + "$prg -in files/empty-info.pdf -out out.pdf -key /Subject " . + "-val Tammlin", + "", "out.pdf", "files/3.qdf"); + +copy("files/no-info.pdf", "no-info.pdf") or die "can't copy no-info: $!"; +run_and_cmp("in-place Producer added (no-info file)", + "$prg -in no-info.pdf -key /Producer -val \"Obivan Kinobi\"", + "", "no-info.pdf", "files/4.qdf"); + +cleanup(); + +$td->report(15); + +sub cleanup +{ + unlink (<*.pdf>); +} + +sub run_and_cmp +{ + my ($dsc, $cmd, $out, $fout, $fexp) = @_; + $td->runtest($dsc, + {$td->COMMAND => "$cmd --static-id"}, + {$td->STRING => $out, + $td->EXIT_STATUS => 0}); + $td->runtest("$dsc output", + {$td->COMMAND => "$qpdf --static-id -qdf $fout -"}, + {$td->FILE => $fexp, + $td->EXIT_STATUS => 0}); +} |