From bf2fb239d7a39255fe122db50dd5d03f9baa25ae Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sat, 13 Jan 2018 14:32:39 -0500 Subject: Rename png_filter -> predictors --- libtests/build.mk | 2 +- libtests/png_filter.cc | 80 ---------------------- libtests/predictors.cc | 91 ++++++++++++++++++++++++ libtests/qtest/png_filter.test | 95 -------------------------- libtests/qtest/png_filter/01--32-3-16.data | Bin 6176 -> 0 bytes libtests/qtest/png_filter/01--32-3-16.decoded | Bin 6144 -> 0 bytes libtests/qtest/png_filter/02--32-1-8.data | Bin 1056 -> 0 bytes libtests/qtest/png_filter/02--32-1-8.decoded | Bin 1024 -> 0 bytes libtests/qtest/png_filter/03--32-3-8.data | Bin 3104 -> 0 bytes libtests/qtest/png_filter/03--32-3-8.decoded | Bin 3072 -> 0 bytes libtests/qtest/png_filter/04--32-1-8.data | Bin 1056 -> 0 bytes libtests/qtest/png_filter/04--32-1-8.decoded | Bin 1024 -> 0 bytes libtests/qtest/png_filter/05--32-3-8.data | Bin 3104 -> 0 bytes libtests/qtest/png_filter/05--32-3-8.decoded | Bin 3072 -> 0 bytes libtests/qtest/png_filter/06--32-1-8.data | Bin 1056 -> 0 bytes libtests/qtest/png_filter/06--32-1-8.decoded | Bin 1024 -> 0 bytes libtests/qtest/png_filter/07--32-3-8.data | Bin 3104 -> 0 bytes libtests/qtest/png_filter/07--32-3-8.decoded | Bin 3072 -> 0 bytes libtests/qtest/png_filter/08--32-1-8.data | Bin 1056 -> 0 bytes libtests/qtest/png_filter/08--32-1-8.decoded | Bin 1024 -> 0 bytes libtests/qtest/png_filter/09--32-3-8.data | Bin 3104 -> 0 bytes libtests/qtest/png_filter/09--32-3-8.decoded | Bin 3072 -> 0 bytes libtests/qtest/png_filter/10--32-1-8.data | Bin 1056 -> 0 bytes libtests/qtest/png_filter/10--32-1-8.decoded | Bin 1024 -> 0 bytes libtests/qtest/png_filter/11--32-3-8.data | Bin 3104 -> 0 bytes libtests/qtest/png_filter/11--32-3-8.decoded | Bin 3072 -> 0 bytes libtests/qtest/png_filter/12--32-1-4.data | Bin 544 -> 0 bytes libtests/qtest/png_filter/12--32-1-4.decoded | Bin 512 -> 0 bytes libtests/qtest/png_filter/in1 | Bin 3985 -> 0 bytes libtests/qtest/png_filter/in2 | Bin 339564 -> 0 bytes libtests/qtest/png_filter/out1 | Bin 3188 -> 0 bytes libtests/qtest/png_filter/out2 | Bin 282970 -> 0 bytes libtests/qtest/predictors.test | 95 ++++++++++++++++++++++++++ libtests/qtest/predictors/01--32-3-16.data | Bin 0 -> 6176 bytes libtests/qtest/predictors/01--32-3-16.decoded | Bin 0 -> 6144 bytes libtests/qtest/predictors/02--32-1-8.data | Bin 0 -> 1056 bytes libtests/qtest/predictors/02--32-1-8.decoded | Bin 0 -> 1024 bytes libtests/qtest/predictors/03--32-3-8.data | Bin 0 -> 3104 bytes libtests/qtest/predictors/03--32-3-8.decoded | Bin 0 -> 3072 bytes libtests/qtest/predictors/04--32-1-8.data | Bin 0 -> 1056 bytes libtests/qtest/predictors/04--32-1-8.decoded | Bin 0 -> 1024 bytes libtests/qtest/predictors/05--32-3-8.data | Bin 0 -> 3104 bytes libtests/qtest/predictors/05--32-3-8.decoded | Bin 0 -> 3072 bytes libtests/qtest/predictors/06--32-1-8.data | Bin 0 -> 1056 bytes libtests/qtest/predictors/06--32-1-8.decoded | Bin 0 -> 1024 bytes libtests/qtest/predictors/07--32-3-8.data | Bin 0 -> 3104 bytes libtests/qtest/predictors/07--32-3-8.decoded | Bin 0 -> 3072 bytes libtests/qtest/predictors/08--32-1-8.data | Bin 0 -> 1056 bytes libtests/qtest/predictors/08--32-1-8.decoded | Bin 0 -> 1024 bytes libtests/qtest/predictors/09--32-3-8.data | Bin 0 -> 3104 bytes libtests/qtest/predictors/09--32-3-8.decoded | Bin 0 -> 3072 bytes libtests/qtest/predictors/10--32-1-8.data | Bin 0 -> 1056 bytes libtests/qtest/predictors/10--32-1-8.decoded | Bin 0 -> 1024 bytes libtests/qtest/predictors/11--32-3-8.data | Bin 0 -> 3104 bytes libtests/qtest/predictors/11--32-3-8.decoded | Bin 0 -> 3072 bytes libtests/qtest/predictors/12--32-1-4.data | Bin 0 -> 544 bytes libtests/qtest/predictors/12--32-1-4.decoded | Bin 0 -> 512 bytes libtests/qtest/predictors/in1 | Bin 0 -> 3985 bytes libtests/qtest/predictors/in2 | Bin 0 -> 339564 bytes libtests/qtest/predictors/out1 | Bin 0 -> 3188 bytes libtests/qtest/predictors/out2 | Bin 0 -> 282970 bytes 61 files changed, 187 insertions(+), 176 deletions(-) delete mode 100644 libtests/png_filter.cc create mode 100644 libtests/predictors.cc delete mode 100644 libtests/qtest/png_filter.test delete mode 100644 libtests/qtest/png_filter/01--32-3-16.data delete mode 100644 libtests/qtest/png_filter/01--32-3-16.decoded delete mode 100644 libtests/qtest/png_filter/02--32-1-8.data delete mode 100644 libtests/qtest/png_filter/02--32-1-8.decoded delete mode 100644 libtests/qtest/png_filter/03--32-3-8.data delete mode 100644 libtests/qtest/png_filter/03--32-3-8.decoded delete mode 100644 libtests/qtest/png_filter/04--32-1-8.data delete mode 100644 libtests/qtest/png_filter/04--32-1-8.decoded delete mode 100644 libtests/qtest/png_filter/05--32-3-8.data delete mode 100644 libtests/qtest/png_filter/05--32-3-8.decoded delete mode 100644 libtests/qtest/png_filter/06--32-1-8.data delete mode 100644 libtests/qtest/png_filter/06--32-1-8.decoded delete mode 100644 libtests/qtest/png_filter/07--32-3-8.data delete mode 100644 libtests/qtest/png_filter/07--32-3-8.decoded delete mode 100644 libtests/qtest/png_filter/08--32-1-8.data delete mode 100644 libtests/qtest/png_filter/08--32-1-8.decoded delete mode 100644 libtests/qtest/png_filter/09--32-3-8.data delete mode 100644 libtests/qtest/png_filter/09--32-3-8.decoded delete mode 100644 libtests/qtest/png_filter/10--32-1-8.data delete mode 100644 libtests/qtest/png_filter/10--32-1-8.decoded delete mode 100644 libtests/qtest/png_filter/11--32-3-8.data delete mode 100644 libtests/qtest/png_filter/11--32-3-8.decoded delete mode 100644 libtests/qtest/png_filter/12--32-1-4.data delete mode 100644 libtests/qtest/png_filter/12--32-1-4.decoded delete mode 100644 libtests/qtest/png_filter/in1 delete mode 100644 libtests/qtest/png_filter/in2 delete mode 100644 libtests/qtest/png_filter/out1 delete mode 100644 libtests/qtest/png_filter/out2 create mode 100644 libtests/qtest/predictors.test create mode 100644 libtests/qtest/predictors/01--32-3-16.data create mode 100644 libtests/qtest/predictors/01--32-3-16.decoded create mode 100644 libtests/qtest/predictors/02--32-1-8.data create mode 100644 libtests/qtest/predictors/02--32-1-8.decoded create mode 100644 libtests/qtest/predictors/03--32-3-8.data create mode 100644 libtests/qtest/predictors/03--32-3-8.decoded create mode 100644 libtests/qtest/predictors/04--32-1-8.data create mode 100644 libtests/qtest/predictors/04--32-1-8.decoded create mode 100644 libtests/qtest/predictors/05--32-3-8.data create mode 100644 libtests/qtest/predictors/05--32-3-8.decoded create mode 100644 libtests/qtest/predictors/06--32-1-8.data create mode 100644 libtests/qtest/predictors/06--32-1-8.decoded create mode 100644 libtests/qtest/predictors/07--32-3-8.data create mode 100644 libtests/qtest/predictors/07--32-3-8.decoded create mode 100644 libtests/qtest/predictors/08--32-1-8.data create mode 100644 libtests/qtest/predictors/08--32-1-8.decoded create mode 100644 libtests/qtest/predictors/09--32-3-8.data create mode 100644 libtests/qtest/predictors/09--32-3-8.decoded create mode 100644 libtests/qtest/predictors/10--32-1-8.data create mode 100644 libtests/qtest/predictors/10--32-1-8.decoded create mode 100644 libtests/qtest/predictors/11--32-3-8.data create mode 100644 libtests/qtest/predictors/11--32-3-8.decoded create mode 100644 libtests/qtest/predictors/12--32-1-4.data create mode 100644 libtests/qtest/predictors/12--32-1-4.decoded create mode 100644 libtests/qtest/predictors/in1 create mode 100644 libtests/qtest/predictors/in2 create mode 100644 libtests/qtest/predictors/out1 create mode 100644 libtests/qtest/predictors/out2 (limited to 'libtests') diff --git a/libtests/build.mk b/libtests/build.mk index baa34125..4579241d 100644 --- a/libtests/build.mk +++ b/libtests/build.mk @@ -11,8 +11,8 @@ BINS_libtests = \ input_source \ lzw \ md5 \ - png_filter \ pointer_holder \ + predictors \ qutil \ random \ rc4 \ diff --git a/libtests/png_filter.cc b/libtests/png_filter.cc deleted file mode 100644 index 7494cb7a..00000000 --- a/libtests/png_filter.cc +++ /dev/null @@ -1,80 +0,0 @@ -#include -#include -#include - -#include -#include -#include -#include -#include - -void run(char const* filename, bool encode, unsigned int columns, - int bits_per_sample, int samples_per_pixel) -{ - // Decode the file - FILE* in = QUtil::safe_fopen(filename, "rb"); - FILE* o1 = QUtil::safe_fopen("out", "wb"); - Pipeline* out = new Pl_StdioFile("out", o1); - Pipeline* pl = new Pl_PNGFilter( - "png", out, - encode ? Pl_PNGFilter::a_encode : Pl_PNGFilter::a_decode, - columns, samples_per_pixel, bits_per_sample); - assert((2 * (columns + 1)) < 1024); - unsigned char buf[1024]; - size_t len; - while (true) - { - len = fread(buf, 1, (2 * columns) + 1, in); - if (len == 0) - { - break; - } - pl->write(buf, len); - len = fread(buf, 1, 1, in); - if (len == 0) - { - break; - } - pl->write(buf, len); - len = fread(buf, 1, 1, in); - if (len == 0) - { - break; - } - pl->write(buf, len); - } - - pl->finish(); - delete pl; - delete out; - fclose(o1); - fclose(in); - - std::cout << "done" << std::endl; -} - -int main(int argc, char* argv[]) -{ - if (argc != 6) - { - std::cerr << "Usage: png_filter {en,de}code filename" - << " columns samples-per-pixel bits-per-sample" - << std::endl; - exit(2); - } - bool encode = (strcmp(argv[1], "encode") == 0); - char* filename = argv[2]; - int columns = QUtil::string_to_int(argv[3]); - int samples_per_pixel = QUtil::string_to_int(argv[4]); - int bits_per_sample = QUtil::string_to_int(argv[5]); - - try - { - run(filename, encode, columns, bits_per_sample, samples_per_pixel); - } - catch (std::exception& e) - { - std::cout << e.what() << std::endl; - } - return 0; -} diff --git a/libtests/predictors.cc b/libtests/predictors.cc new file mode 100644 index 00000000..fe2b90f4 --- /dev/null +++ b/libtests/predictors.cc @@ -0,0 +1,91 @@ +#include +#include +#include + +#include +#include +#include +#include +#include + +void run(char const* filename, char const* filter, + bool encode, unsigned int columns, + int bits_per_sample, int samples_per_pixel) +{ + FILE* in = QUtil::safe_fopen(filename, "rb"); + FILE* o1 = QUtil::safe_fopen("out", "wb"); + Pipeline* out = new Pl_StdioFile("out", o1); + Pipeline* pl = 0; + if (strcmp(filter, "png") == 0) + { + pl = new Pl_PNGFilter( + "png", out, + encode ? Pl_PNGFilter::a_encode : Pl_PNGFilter::a_decode, + columns, samples_per_pixel, bits_per_sample); + } + else + { + std::cerr << "unknown filter " << filter << std::endl; + exit(2); + } + assert((2 * (columns + 1)) < 1024); + unsigned char buf[1024]; + size_t len; + while (true) + { + len = fread(buf, 1, (2 * columns) + 1, in); + if (len == 0) + { + break; + } + pl->write(buf, len); + len = fread(buf, 1, 1, in); + if (len == 0) + { + break; + } + pl->write(buf, len); + len = fread(buf, 1, 1, in); + if (len == 0) + { + break; + } + pl->write(buf, len); + } + + pl->finish(); + delete pl; + delete out; + fclose(o1); + fclose(in); + + std::cout << "done" << std::endl; +} + +int main(int argc, char* argv[]) +{ + if (argc != 7) + { + std::cerr << "Usage: predictor {png|tiff} {en,de}code filename" + << " columns samples-per-pixel bits-per-sample" + << std::endl; + exit(2); + } + char* filter = argv[1]; + bool encode = (strcmp(argv[2], "encode") == 0); + char* filename = argv[3]; + int columns = QUtil::string_to_int(argv[4]); + int samples_per_pixel = QUtil::string_to_int(argv[5]); + int bits_per_sample = QUtil::string_to_int(argv[6]); + + try + { + run(filename, filter, encode, + columns, bits_per_sample, samples_per_pixel); + } + catch (std::exception& e) + { + std::cout << e.what() << std::endl; + } + return 0; +} diff --git a/libtests/qtest/png_filter.test b/libtests/qtest/png_filter.test deleted file mode 100644 index ff3cef54..00000000 --- a/libtests/qtest/png_filter.test +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/env perl -require 5.008; -BEGIN { $^W = 1; } -use strict; -use File::Copy; -use Digest::MD5; - -chdir("png_filter") or die "chdir testdir failed: $!\n"; - -require TestDriver; - -my $td = new TestDriver('png_filter'); - -cleanup(); - -$td->runtest("decode columns = 4", - {$td->COMMAND => "png_filter 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 => "png_filter 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 => "png_filter 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 => "png_filter 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 => "png_filter 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"; -} diff --git a/libtests/qtest/png_filter/01--32-3-16.data b/libtests/qtest/png_filter/01--32-3-16.data deleted file mode 100644 index 01cfcbc1..00000000 Binary files a/libtests/qtest/png_filter/01--32-3-16.data and /dev/null differ diff --git a/libtests/qtest/png_filter/01--32-3-16.decoded b/libtests/qtest/png_filter/01--32-3-16.decoded deleted file mode 100644 index 2459a085..00000000 Binary files a/libtests/qtest/png_filter/01--32-3-16.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/02--32-1-8.data b/libtests/qtest/png_filter/02--32-1-8.data deleted file mode 100644 index c7978ffc..00000000 Binary files a/libtests/qtest/png_filter/02--32-1-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/02--32-1-8.decoded b/libtests/qtest/png_filter/02--32-1-8.decoded deleted file mode 100644 index d8320b3f..00000000 Binary files a/libtests/qtest/png_filter/02--32-1-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/03--32-3-8.data b/libtests/qtest/png_filter/03--32-3-8.data deleted file mode 100644 index 5600cc42..00000000 Binary files a/libtests/qtest/png_filter/03--32-3-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/03--32-3-8.decoded b/libtests/qtest/png_filter/03--32-3-8.decoded deleted file mode 100644 index ae56281a..00000000 Binary files a/libtests/qtest/png_filter/03--32-3-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/04--32-1-8.data b/libtests/qtest/png_filter/04--32-1-8.data deleted file mode 100644 index 684a649a..00000000 Binary files a/libtests/qtest/png_filter/04--32-1-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/04--32-1-8.decoded b/libtests/qtest/png_filter/04--32-1-8.decoded deleted file mode 100644 index e1087d17..00000000 Binary files a/libtests/qtest/png_filter/04--32-1-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/05--32-3-8.data b/libtests/qtest/png_filter/05--32-3-8.data deleted file mode 100644 index 32c103ff..00000000 Binary files a/libtests/qtest/png_filter/05--32-3-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/05--32-3-8.decoded b/libtests/qtest/png_filter/05--32-3-8.decoded deleted file mode 100644 index f4a4f7ce..00000000 Binary files a/libtests/qtest/png_filter/05--32-3-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/06--32-1-8.data b/libtests/qtest/png_filter/06--32-1-8.data deleted file mode 100644 index 806f68e2..00000000 Binary files a/libtests/qtest/png_filter/06--32-1-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/06--32-1-8.decoded b/libtests/qtest/png_filter/06--32-1-8.decoded deleted file mode 100644 index 58b70604..00000000 Binary files a/libtests/qtest/png_filter/06--32-1-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/07--32-3-8.data b/libtests/qtest/png_filter/07--32-3-8.data deleted file mode 100644 index 577ba70d..00000000 Binary files a/libtests/qtest/png_filter/07--32-3-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/07--32-3-8.decoded b/libtests/qtest/png_filter/07--32-3-8.decoded deleted file mode 100644 index 20658f29..00000000 Binary files a/libtests/qtest/png_filter/07--32-3-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/08--32-1-8.data b/libtests/qtest/png_filter/08--32-1-8.data deleted file mode 100644 index f5aea4a1..00000000 Binary files a/libtests/qtest/png_filter/08--32-1-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/08--32-1-8.decoded b/libtests/qtest/png_filter/08--32-1-8.decoded deleted file mode 100644 index 9f2c62e2..00000000 Binary files a/libtests/qtest/png_filter/08--32-1-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/09--32-3-8.data b/libtests/qtest/png_filter/09--32-3-8.data deleted file mode 100644 index 03cd2bb6..00000000 Binary files a/libtests/qtest/png_filter/09--32-3-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/09--32-3-8.decoded b/libtests/qtest/png_filter/09--32-3-8.decoded deleted file mode 100644 index 4059e57f..00000000 Binary files a/libtests/qtest/png_filter/09--32-3-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/10--32-1-8.data b/libtests/qtest/png_filter/10--32-1-8.data deleted file mode 100644 index ad8c632b..00000000 Binary files a/libtests/qtest/png_filter/10--32-1-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/10--32-1-8.decoded b/libtests/qtest/png_filter/10--32-1-8.decoded deleted file mode 100644 index a713a0f6..00000000 Binary files a/libtests/qtest/png_filter/10--32-1-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/11--32-3-8.data b/libtests/qtest/png_filter/11--32-3-8.data deleted file mode 100644 index 199c13d8..00000000 Binary files a/libtests/qtest/png_filter/11--32-3-8.data and /dev/null differ diff --git a/libtests/qtest/png_filter/11--32-3-8.decoded b/libtests/qtest/png_filter/11--32-3-8.decoded deleted file mode 100644 index b86fc1e9..00000000 Binary files a/libtests/qtest/png_filter/11--32-3-8.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/12--32-1-4.data b/libtests/qtest/png_filter/12--32-1-4.data deleted file mode 100644 index 09e62874..00000000 Binary files a/libtests/qtest/png_filter/12--32-1-4.data and /dev/null differ diff --git a/libtests/qtest/png_filter/12--32-1-4.decoded b/libtests/qtest/png_filter/12--32-1-4.decoded deleted file mode 100644 index 83e116c7..00000000 Binary files a/libtests/qtest/png_filter/12--32-1-4.decoded and /dev/null differ diff --git a/libtests/qtest/png_filter/in1 b/libtests/qtest/png_filter/in1 deleted file mode 100644 index bb830eca..00000000 Binary files a/libtests/qtest/png_filter/in1 and /dev/null differ diff --git a/libtests/qtest/png_filter/in2 b/libtests/qtest/png_filter/in2 deleted file mode 100644 index 430a0740..00000000 Binary files a/libtests/qtest/png_filter/in2 and /dev/null differ diff --git a/libtests/qtest/png_filter/out1 b/libtests/qtest/png_filter/out1 deleted file mode 100644 index 5625f331..00000000 Binary files a/libtests/qtest/png_filter/out1 and /dev/null differ diff --git a/libtests/qtest/png_filter/out2 b/libtests/qtest/png_filter/out2 deleted file mode 100644 index dad129df..00000000 Binary files a/libtests/qtest/png_filter/out2 and /dev/null differ 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"; +} diff --git a/libtests/qtest/predictors/01--32-3-16.data b/libtests/qtest/predictors/01--32-3-16.data new file mode 100644 index 00000000..01cfcbc1 Binary files /dev/null and b/libtests/qtest/predictors/01--32-3-16.data differ diff --git a/libtests/qtest/predictors/01--32-3-16.decoded b/libtests/qtest/predictors/01--32-3-16.decoded new file mode 100644 index 00000000..2459a085 Binary files /dev/null and b/libtests/qtest/predictors/01--32-3-16.decoded differ diff --git a/libtests/qtest/predictors/02--32-1-8.data b/libtests/qtest/predictors/02--32-1-8.data new file mode 100644 index 00000000..c7978ffc Binary files /dev/null and b/libtests/qtest/predictors/02--32-1-8.data differ diff --git a/libtests/qtest/predictors/02--32-1-8.decoded b/libtests/qtest/predictors/02--32-1-8.decoded new file mode 100644 index 00000000..d8320b3f Binary files /dev/null and b/libtests/qtest/predictors/02--32-1-8.decoded differ diff --git a/libtests/qtest/predictors/03--32-3-8.data b/libtests/qtest/predictors/03--32-3-8.data new file mode 100644 index 00000000..5600cc42 Binary files /dev/null and b/libtests/qtest/predictors/03--32-3-8.data differ diff --git a/libtests/qtest/predictors/03--32-3-8.decoded b/libtests/qtest/predictors/03--32-3-8.decoded new file mode 100644 index 00000000..ae56281a Binary files /dev/null and b/libtests/qtest/predictors/03--32-3-8.decoded differ diff --git a/libtests/qtest/predictors/04--32-1-8.data b/libtests/qtest/predictors/04--32-1-8.data new file mode 100644 index 00000000..684a649a Binary files /dev/null and b/libtests/qtest/predictors/04--32-1-8.data differ diff --git a/libtests/qtest/predictors/04--32-1-8.decoded b/libtests/qtest/predictors/04--32-1-8.decoded new file mode 100644 index 00000000..e1087d17 Binary files /dev/null and b/libtests/qtest/predictors/04--32-1-8.decoded differ diff --git a/libtests/qtest/predictors/05--32-3-8.data b/libtests/qtest/predictors/05--32-3-8.data new file mode 100644 index 00000000..32c103ff Binary files /dev/null and b/libtests/qtest/predictors/05--32-3-8.data differ diff --git a/libtests/qtest/predictors/05--32-3-8.decoded b/libtests/qtest/predictors/05--32-3-8.decoded new file mode 100644 index 00000000..f4a4f7ce Binary files /dev/null and b/libtests/qtest/predictors/05--32-3-8.decoded differ diff --git a/libtests/qtest/predictors/06--32-1-8.data b/libtests/qtest/predictors/06--32-1-8.data new file mode 100644 index 00000000..806f68e2 Binary files /dev/null and b/libtests/qtest/predictors/06--32-1-8.data differ diff --git a/libtests/qtest/predictors/06--32-1-8.decoded b/libtests/qtest/predictors/06--32-1-8.decoded new file mode 100644 index 00000000..58b70604 Binary files /dev/null and b/libtests/qtest/predictors/06--32-1-8.decoded differ diff --git a/libtests/qtest/predictors/07--32-3-8.data b/libtests/qtest/predictors/07--32-3-8.data new file mode 100644 index 00000000..577ba70d Binary files /dev/null and b/libtests/qtest/predictors/07--32-3-8.data differ diff --git a/libtests/qtest/predictors/07--32-3-8.decoded b/libtests/qtest/predictors/07--32-3-8.decoded new file mode 100644 index 00000000..20658f29 Binary files /dev/null and b/libtests/qtest/predictors/07--32-3-8.decoded differ diff --git a/libtests/qtest/predictors/08--32-1-8.data b/libtests/qtest/predictors/08--32-1-8.data new file mode 100644 index 00000000..f5aea4a1 Binary files /dev/null and b/libtests/qtest/predictors/08--32-1-8.data differ diff --git a/libtests/qtest/predictors/08--32-1-8.decoded b/libtests/qtest/predictors/08--32-1-8.decoded new file mode 100644 index 00000000..9f2c62e2 Binary files /dev/null and b/libtests/qtest/predictors/08--32-1-8.decoded differ diff --git a/libtests/qtest/predictors/09--32-3-8.data b/libtests/qtest/predictors/09--32-3-8.data new file mode 100644 index 00000000..03cd2bb6 Binary files /dev/null and b/libtests/qtest/predictors/09--32-3-8.data differ diff --git a/libtests/qtest/predictors/09--32-3-8.decoded b/libtests/qtest/predictors/09--32-3-8.decoded new file mode 100644 index 00000000..4059e57f Binary files /dev/null and b/libtests/qtest/predictors/09--32-3-8.decoded differ diff --git a/libtests/qtest/predictors/10--32-1-8.data b/libtests/qtest/predictors/10--32-1-8.data new file mode 100644 index 00000000..ad8c632b Binary files /dev/null and b/libtests/qtest/predictors/10--32-1-8.data differ diff --git a/libtests/qtest/predictors/10--32-1-8.decoded b/libtests/qtest/predictors/10--32-1-8.decoded new file mode 100644 index 00000000..a713a0f6 Binary files /dev/null and b/libtests/qtest/predictors/10--32-1-8.decoded differ diff --git a/libtests/qtest/predictors/11--32-3-8.data b/libtests/qtest/predictors/11--32-3-8.data new file mode 100644 index 00000000..199c13d8 Binary files /dev/null and b/libtests/qtest/predictors/11--32-3-8.data differ diff --git a/libtests/qtest/predictors/11--32-3-8.decoded b/libtests/qtest/predictors/11--32-3-8.decoded new file mode 100644 index 00000000..b86fc1e9 Binary files /dev/null and b/libtests/qtest/predictors/11--32-3-8.decoded differ diff --git a/libtests/qtest/predictors/12--32-1-4.data b/libtests/qtest/predictors/12--32-1-4.data new file mode 100644 index 00000000..09e62874 Binary files /dev/null and b/libtests/qtest/predictors/12--32-1-4.data differ diff --git a/libtests/qtest/predictors/12--32-1-4.decoded b/libtests/qtest/predictors/12--32-1-4.decoded new file mode 100644 index 00000000..83e116c7 Binary files /dev/null and b/libtests/qtest/predictors/12--32-1-4.decoded differ diff --git a/libtests/qtest/predictors/in1 b/libtests/qtest/predictors/in1 new file mode 100644 index 00000000..bb830eca Binary files /dev/null and b/libtests/qtest/predictors/in1 differ diff --git a/libtests/qtest/predictors/in2 b/libtests/qtest/predictors/in2 new file mode 100644 index 00000000..430a0740 Binary files /dev/null and b/libtests/qtest/predictors/in2 differ diff --git a/libtests/qtest/predictors/out1 b/libtests/qtest/predictors/out1 new file mode 100644 index 00000000..5625f331 Binary files /dev/null and b/libtests/qtest/predictors/out1 differ diff --git a/libtests/qtest/predictors/out2 b/libtests/qtest/predictors/out2 new file mode 100644 index 00000000..dad129df Binary files /dev/null and b/libtests/qtest/predictors/out2 differ -- cgit v1.2.3-70-g09d2