diff options
author | Jay Berkenbilt <ejb@ql.org> | 2018-01-13 20:32:39 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2018-01-14 01:49:42 +0100 |
commit | bf2fb239d7a39255fe122db50dd5d03f9baa25ae (patch) | |
tree | c72455d3976deb3fae772ce9c3b6f2dc8ab5fb33 /libtests/qtest/predictors.test | |
parent | 661ed1d28ef03bc61739e4998b8d60005f1f2ee3 (diff) | |
download | qpdf-bf2fb239d7a39255fe122db50dd5d03f9baa25ae.tar.zst |
Rename png_filter -> predictors
Diffstat (limited to 'libtests/qtest/predictors.test')
-rw-r--r-- | libtests/qtest/predictors.test | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/libtests/qtest/predictors.test b/libtests/qtest/predictors.test new file mode 100644 index 00000000..f0553472 --- /dev/null +++ b/libtests/qtest/predictors.test @@ -0,0 +1,95 @@ +#!/usr/bin/env perl +require 5.008; +BEGIN { $^W = 1; } +use strict; +use File::Copy; +use Digest::MD5; + +chdir("predictors") or die "chdir testdir failed: $!\n"; + +require TestDriver; + +my $td = new TestDriver('predictors'); + +cleanup(); + +$td->runtest("decode columns = 4", + {$td->COMMAND => "predictors png decode in1 4 1 8"}, + {$td->STRING => "done\n", + $td->EXIT_STATUS => 0}, + $td->NORMALIZE_NEWLINES); + +$td->runtest("check output", + {$td->FILE => "out"}, + {$td->FILE => "out1"}); + +$td->runtest("decode columns = 5", + {$td->COMMAND => "predictors png decode in2 5 1 8"}, + {$td->STRING => "done\n", + $td->EXIT_STATUS => 0}, + $td->NORMALIZE_NEWLINES); + +$td->runtest("check output", + {$td->FILE => "out"}, + {$td->FILE => "out2"}); + +$td->runtest("encode columns = 4", + {$td->COMMAND => "predictors png encode out1 4 1 8"}, + {$td->STRING => "done\n", + $td->EXIT_STATUS => 0}, + $td->NORMALIZE_NEWLINES); + +$td->runtest("check output", + {$td->FILE => "out"}, + {$td->FILE => "in1"}); + +$td->runtest("encode columns = 5", + {$td->COMMAND => "predictors png encode out2 5 1 8"}, + {$td->STRING => "done\n", + $td->EXIT_STATUS => 0}, + $td->NORMALIZE_NEWLINES); + +$td->runtest("check output", + {$td->FILE => "out"}, + {$td->FILE => "in2"}); + +my @other = ( + '01--32-3-16', + '02--32-1-8', + '03--32-3-8', + '04--32-1-8', + '05--32-3-8', + '06--32-1-8', + '07--32-3-8', + '08--32-1-8', + '09--32-3-8', + '10--32-1-8', + '11--32-3-8', + '12--32-1-4', + ); + +foreach my $i (@other) +{ + $i =~ m/^.*?--(\d+)-(\d+)-(\d+)$/ or die; + my $columns = $1; + my $samples_per_pixel = $2; + my $bits_per_sample = $3; + $td->runtest("decode $i", + {$td->COMMAND => "predictors png decode $i.data" . + " $columns $samples_per_pixel $bits_per_sample"}, + {$td->STRING => "done\n", + $td->EXIT_STATUS => 0}, + $td->NORMALIZE_NEWLINES); + $td->runtest("check output for $i", + {$td->FILE => "out"}, + {$td->FILE => "$i.decoded"}); +} + +cleanup(); + +$td->report(8 + (2 * scalar(@other))); + +sub cleanup +{ + unlink "out"; +} |