[libpng17] Enable parallel tests and rearrange TESTS order to take advantage of

the massive speed improvements use a make capable of parallel builds
on a multi-CPU machine and pass the right arguments to make (-j10000
for GNU make) to get the build to run in parallel.
This commit is contained in:
Glenn Randers-Pehrson 2013-02-07 08:10:38 -06:00
parent bf7084b80d
commit b10867cdc2
48 changed files with 492 additions and 151 deletions

View File

@ -135,6 +135,10 @@ Version 1.7.0alpha10 [February 5, 2013]
everywhere. everywhere.
Version 1.7.0alpha11 [February 7, 2013] Version 1.7.0alpha11 [February 7, 2013]
Enable parallel tests and rearrange TESTS order to take advantage of
the massive speed improvements use a make capable of parallel builds
on a multi-CPU machine and pass the right arguments to make (-j10000
for GNU make) to get the build to run in parallel.
=========================================================================== ===========================================================================
NOTICE November 17, 2012: NOTICE November 17, 2012:

View File

@ -4421,6 +4421,10 @@ Version 1.7.0alpha10 [February 5, 2013]
everywhere. everywhere.
Version 1.7.0alpha11 [February 7, 2013] Version 1.7.0alpha11 [February 7, 2013]
Enable parallel tests and rearrange TESTS order to take advantage of
the massive speed improvements use a make capable of parallel builds
on a multi-CPU machine and pass the right arguments to make (-j10000
for GNU make) to get the build to run in parallel.
=========================================================================== ===========================================================================
NOTICE November 17, 2012: NOTICE November 17, 2012:

View File

@ -7,24 +7,41 @@ PNGLIB_BASENAME= libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@
ACLOCAL_AMFLAGS = -I scripts ACLOCAL_AMFLAGS = -I scripts
# test programs - run on make check, make distcheck # test programs - run on make check, make distcheck
TESTS_ENVIRONMENT= srcdir=$(srcdir) check_PROGRAMS= pngtest pngunknown pngstest pngvalid
check_PROGRAMS= pngtest
pngtest_SOURCES = pngtest.c pngtest_SOURCES = pngtest.c
pngtest_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la pngtest_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la
TESTS = test-pngtest.sh
# Only do the following if the contrib directory is present.
check_PROGRAMS+= pngvalid pngstest pngunknown
pngvalid_SOURCES = contrib/libtests/pngvalid.c pngvalid_SOURCES = contrib/libtests/pngvalid.c
pngstest_SOURCES = contrib/libtests/pngstest.c
pngunknown_SOURCES = contrib/libtests/pngunknown.c
pngvalid_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la pngvalid_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la
pngstest_SOURCES = contrib/libtests/pngstest.c
pngstest_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la pngstest_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la
pngunknown_SOURCES = contrib/libtests/pngunknown.c
pngunknown_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la pngunknown_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la
TESTS += contrib/libtests/test-pngunknown.sh\
contrib/libtests/test-pngvalid-simple.sh\ # Generally these are single line shell scripts to run a test with a particular
contrib/libtests/test-pngvalid-full.sh\ # set of parameters:
contrib/libtests/test-pngstest.sh TESTS = tests/pngstest-0g01 tests/pngstest-0g02 tests/pngstest-0g04\
tests/pngstest-0g08 tests/pngstest-0g16 tests/pngstest-2c08\
tests/pngstest-2c16 tests/pngstest-3p01 tests/pngstest-3p02\
tests/pngstest-3p04 tests/pngstest-3p08 tests/pngstest-4a08\
tests/pngstest-4a16 tests/pngstest-6a08 tests/pngstest-6a16\
tests/pngstest-error tests/pngtest tests/pngunknown-IDAT\
tests/pngunknown-discard tests/pngunknown-if-safe tests/pngunknown-sAPI\
tests/pngunknown-sTER tests/pngunknown-save tests/pngunknown-vpAg\
tests/pngvalid-gamma-16-to-8 tests/pngvalid-gamma-alpha-mode\
tests/pngvalid-gamma-background tests/pngvalid-gamma-expand16-alpha-mode\
tests/pngvalid-gamma-expand16-background\
tests/pngvalid-gamma-expand16-transform tests/pngvalid-gamma-sbit\
tests/pngvalid-gamma-threshold tests/pngvalid-gamma-transform\
tests/pngvalid-progressive-interlace-size\
tests/pngvalid-progressive-interlace-standard\
tests/pngvalid-progressive-interlace-transform\
tests/pngvalid-progressive-standard tests/pngvalid-standard
# These tests are expected, and required, to fail:
XFAIL_TESTS = tests/pngstest-error
# man pages # man pages
dist_man_MANS= libpng.3 libpngpf.3 png.5 dist_man_MANS= libpng.3 libpngpf.3 png.5

View File

@ -26,9 +26,11 @@ AC_CONFIG_MACRO_DIR([scripts])
# silent-rules requires automake 1.11 or later # silent-rules requires automake 1.11 or later
# dist-xz requires automake 1.11 or later # dist-xz requires automake 1.11 or later
# 1.12.2 fixes a security issue in 1.11.2 and 1.12.1 # 1.12.2 fixes a security issue in 1.11.2 and 1.12.1
AM_INIT_AUTOMAKE([1.12.2 foreign dist-xz color-tests silent-rules]) # 1.13 is required for parallel tests
# was: AM_INIT_AUTOMAKE([1.13 foreign dist-xz color-tests silent-rules])
# AM_INIT_AUTOMAKE # The following line causes --disable-maintainer-mode to be the default to
# configure, this is necessary because libpng distributions cannot rely on the
# time stamps of the autotools generated files being correct
AM_MAINTAINER_MODE AM_MAINTAINER_MODE
dnl configure.ac and Makefile.am expect automake 1.11.2 or a compatible later dnl configure.ac and Makefile.am expect automake 1.11.2 or a compatible later

View File

@ -62,6 +62,12 @@
# define aligncastconst(type, value) ((const void*)(value)) # define aligncastconst(type, value) ((const void*)(value))
#endif /* __cplusplus */ #endif /* __cplusplus */
/* During parallel runs of pngstest each temporary file needs a unique name,
* this is used to permit uniqueness using a command line argument which can be
* up to 22 characters long.
*/
static char tmpf[23] = "TMP";
/* Generate random bytes. This uses a boring repeatable algorithm and it /* Generate random bytes. This uses a boring repeatable algorithm and it
* is implemented here so that it gives the same set of numbers on every * is implemented here so that it gives the same set of numbers on every
* architecture. It's a linear congruential generator (Knuth or Sedgewick * architecture. It's a linear congruential generator (Knuth or Sedgewick
@ -3198,7 +3204,7 @@ write_one_file(Image *output, Image *image, int convert_to_8bit)
static int counter = 0; static int counter = 0;
char name[32]; char name[32];
sprintf(name, "TMP%d.png", ++counter); sprintf(name, "%s%d.png", tmpf, ++counter);
if (png_image_write_to_file(&image->image, name, convert_to_8bit, if (png_image_write_to_file(&image->image, name, convert_to_8bit,
image->buffer+16, (png_int_32)image->stride, image->colormap)) image->buffer+16, (png_int_32)image->stride, image->colormap))
@ -3482,6 +3488,30 @@ main(int argc, char **argv)
opts &= ~KEEP_GOING; opts &= ~KEEP_GOING;
else if (strcmp(arg, "--strict") == 0) else if (strcmp(arg, "--strict") == 0)
opts |= STRICT; opts |= STRICT;
else if (strcmp(arg, "--tmpfile") == 0)
{
if (c+1 < argc)
{
if (strlen(argv[++c]) >= sizeof tmpf)
{
fflush(stdout);
fprintf(stderr, "%s: %s is too long for a temp file prefix\n",
argv[0], argv[c]);
exit(99);
}
/* Safe: checked above */
strcpy(tmpf, argv[c]);
}
else
{
fflush(stdout);
fprintf(stderr, "%s: %s requires a temporary file prefix\n",
argv[0], arg);
exit(99);
}
}
else if (strcmp(arg, "--touch") == 0) else if (strcmp(arg, "--touch") == 0)
{ {
if (c+1 < argc) if (c+1 < argc)
@ -3492,7 +3522,7 @@ main(int argc, char **argv)
fflush(stdout); fflush(stdout);
fprintf(stderr, "%s: %s requires a file name argument\n", fprintf(stderr, "%s: %s requires a file name argument\n",
argv[0], arg); argv[0], arg);
exit(1); exit(99);
} }
} }
else if (arg[0] == '+') else if (arg[0] == '+')
@ -3500,7 +3530,7 @@ main(int argc, char **argv)
png_uint_32 format = formatof(arg+1); png_uint_32 format = formatof(arg+1);
if (format > FORMAT_COUNT) if (format > FORMAT_COUNT)
exit(1); exit(99);
format_set(&formats, format); format_set(&formats, format);
} }
@ -3508,7 +3538,7 @@ main(int argc, char **argv)
{ {
fflush(stdout); fflush(stdout);
fprintf(stderr, "%s: unknown option: %s\n", argv[0], arg); fprintf(stderr, "%s: unknown option: %s\n", argv[0], arg);
exit(1); exit(99);
} }
else else
{ {
@ -3557,7 +3587,7 @@ main(int argc, char **argv)
buffer[4095] = 0; buffer[4095] = 0;
fprintf(stderr, "%s...%s: file name too long\n", buffer, fprintf(stderr, "%s...%s: file name too long\n", buffer,
buffer+(4096-32)); buffer+(4096-32));
exit(1); exit(99);
} }
} }
@ -3676,7 +3706,7 @@ main(int argc, char **argv)
{ {
fflush(stdout); fflush(stdout);
fprintf(stderr, "%s: write failed\n", touch); fprintf(stderr, "%s: write failed\n", touch);
exit(1); exit(99);
} }
} }
@ -3684,7 +3714,7 @@ main(int argc, char **argv)
{ {
fflush(stdout); fflush(stdout);
fprintf(stderr, "%s: open failed\n", touch); fprintf(stderr, "%s: open failed\n", touch);
exit(1); exit(99);
} }
} }
@ -3695,6 +3725,7 @@ main(int argc, char **argv)
int main(void) int main(void)
{ {
fprintf(stderr, "pngstest: no read support in libpng, test skipped\n"); fprintf(stderr, "pngstest: no read support in libpng, test skipped\n");
return 0; /* So the test is skipped: */
return 77;
} }
#endif /* PNG_SIMPLIFIED_READ_SUPPORTED */ #endif /* PNG_SIMPLIFIED_READ_SUPPORTED */

View File

@ -1,24 +0,0 @@
#!/bin/sh
#
# Run the simplified API tests
err=0
echo >> pngtest-log.txt
echo "============ pngstest.sh ==============" >> pngtest-log.txt
echo "Running test-pngstest.sh"
for image in ${srcdir}/contrib/pngsuite/*.png
do
for opts in ""
do
if ./pngstest --strict --log "$@" $opts $image >>pngtest-log.txt 2>&1
then
echo " PASS: pngstest $opts $image"
else
echo " FAIL: pngstest $opts $image"
err=1
fi
done
done
exit $err

View File

@ -1,38 +0,0 @@
#!/bin/sh
#
# Run the unknown API tests
err=0
image="${srcdir}/pngtest.png"
#
# stream 4 is used for the output of the shell, pngtest-log.txt gets all the
# normal program output.
exec 4>&1 1>>pngtest-log.txt 2>&1
echo
echo "============ test-pngunknown.sh =============="
echo "Running test-pngunknown.sh" >&4
for tests in \
"discard default=discard"\
"save default=save"\
"if-safe default=if-safe"\
"vpAg vpAg=if-safe"\
"sTER sTER=if-safe"\
"IDAT default=discard IDAT=save"\
"sAPI bKGD=save cHRM=save gAMA=save all=discard iCCP=save sBIT=save sRGB=save"
do
set $tests
test="$1"
shift
if ./pngunknown "$@" "$image" 4>&-
then
echo " PASS: test-pngunknown $test" >&4
else
echo " FAIL: test-pngunknown $test" >&4
err=1
fi
done
exit $err

View File

@ -1,21 +0,0 @@
#!/bin/sh
#
# Run a sequence of gamma tests quietly
err=0
echo >> pngtest-log.txt
echo "============ pngvalid-full.sh ==============" >> pngtest-log.txt
echo "Running test-pngvalid-full.sh"
for gamma in threshold transform sbit 16-to-8 background alpha-mode "transform --expand16" "background --expand16" "alpha-mode --expand16"
do
if ./pngvalid "$@" --gamma-$gamma >> pngtest-log.txt 2>&1
then
echo " PASS: pngvalid" "$@" "--gamma-$gamma"
else
echo " FAIL: pngvalid" "$@" "--gamma-$gamma"
err=1
fi
done
exit $err

View File

@ -1,30 +0,0 @@
#!/bin/sh
#
# Run a sequence of tests quietly, without the slow
# gamma tests
err=0
echo >> pngtest-log.txt
echo "============ pngvalid-simple.sh ==============" >> pngtest-log.txt
echo "Running test-pngvalid-simple.sh"
# The options to test are:
#
# standard tests with and without progressive reading and interlace
# size images with and without progressive reading
# transform tests (standard, non-interlaced only)
#
for opts in "--standard" "--standard --progressive-read" \
"--standard --interlace" "--standard --progressive-read --interlace" \
"--size" "--size --progressive-read" \
"--transform"
do
if ./pngvalid "$@" $opts >> pngtest-log.txt 2>&1
then
echo " PASS: pngvalid" "$@" $opts
else
echo " FAIL: pngvalid" "$@" $opts
err=1
fi
done
exit $err

View File

@ -1,16 +0,0 @@
#!/bin/sh
echo "Running tests. For details see pngtest-log.txt"
echo "============ pngtest pngtest.png ==============" > pngtest-log.txt
echo "Running test-pngtest.sh"
if ./pngtest --strict ${srcdir}/pngtest.png >> pngtest-log.txt 2>&1
then
echo " PASS: pngtest --strict pngtest.png"
err=0
else
echo " FAIL: pngtest --strict pngtest.png"
err=1
fi
exit $err

23
tests/pngstest-0g01 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-0g02 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-0g04 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-0g08 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-0g16 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-2c08 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-2c16 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-3p01 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-3p02 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-3p04 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-3p08 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-4a08 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-4a16 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-6a08 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-6a16 Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

23
tests/pngstest-error Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
#
# The name of the script should be:
#
# pngstest-....
#
# Where the last four characters are the suffix of a PNGSuite test file, or
# -error, in which case the x files are used.
case "$0" in
*/pngstest-????)
suffix="${0##*/pngstest\-}"
exec ./pngstest --tmpfile "error" "${srcdir}/contrib/pngsuite/"[^x]*"${suffix}.png";;
*/pngstest-error)
# Test files may not exist, fake a failure if not
set "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
if test $# -ne 1 -o $1 != "${srcdir}/contrib/pngsuite/x*${suffix}.png"
then
exec ./pngstest --tmpfile "${suffix}" "${srcdir}/contrib/pngsuite/"x*"${suffix}.png"
else
exit 1
fi;;
esac

2
tests/pngtest Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngtest --strict ${srcdir}/pngtest.png

2
tests/pngunknown-IDAT Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngunknown default=discard IDAT=save "${srcdir}/pngtest.png"

2
tests/pngunknown-discard Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngunknown default=discard "${srcdir}/pngtest.png"

2
tests/pngunknown-if-safe Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngunknown default=if-safe "${srcdir}/pngtest.png"

2
tests/pngunknown-sAPI Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngunknown bKGD=save cHRM=save gAMA=save all=discard iCCP=save sBIT=save sRGB=save "${srcdir}/pngtest.png"

2
tests/pngunknown-sTER Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngunknown sTER=if-safe "${srcdir}/pngtest.png"

2
tests/pngunknown-save Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngunknown default=save "${srcdir}/pngtest.png"

2
tests/pngunknown-vpAg Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngunknown vpAg=if-safe "${srcdir}/pngtest.png"

2
tests/pngvalid-gamma-16-to-8 Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-16-to-8

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-alpha-mode

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-background

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-alpha-mode --expand16

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-background --expand16

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-transform --expand16

2
tests/pngvalid-gamma-sbit Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-sbit

2
tests/pngvalid-gamma-threshold Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-threshold

2
tests/pngvalid-gamma-transform Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --gamma-transform

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --size --progressive-read

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --standard --progressive-read --interlace

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --transform

View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --standard --interlace

2
tests/pngvalid-standard Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
exec ./pngvalid --standard --progressive-read