diff options
author | giraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8> | 2017-09-11 00:36:38 +0000 |
---|---|---|
committer | giraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8> | 2017-09-11 00:36:38 +0000 |
commit | 572ed0c3b27fb4aa74d5e4fb53c973801d87796d (patch) | |
tree | 5a965eb4511416ce0a45efa5235ad432dd2741fb | |
parent | 359ed5e3cc166eb83233b13da348ddd630cb5359 (diff) | |
download | netpbm-mirror-572ed0c3b27fb4aa74d5e4fb53c973801d87796d.tar.gz netpbm-mirror-572ed0c3b27fb4aa74d5e4fb53c973801d87796d.tar.xz netpbm-mirror-572ed0c3b27fb4aa74d5e4fb53c973801d87796d.zip |
Add tests for Palm programs
git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@3056 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rw-r--r-- | GNUmakefile | 4 | ||||
-rw-r--r-- | test/Test-Order | 3 | ||||
-rw-r--r-- | test/palm-roundtrip2.ok | 5 | ||||
-rwxr-xr-x | test/palm-roundtrip2.test | 31 | ||||
-rw-r--r-- | test/pamtopdbimg.ok | 20 | ||||
-rwxr-xr-x | test/pamtopdbimg.test | 86 | ||||
-rw-r--r-- | test/pdb-roundtrip.ok | 18 | ||||
-rwxr-xr-x | test/pdb-roundtrip.test | 55 |
8 files changed, 222 insertions, 0 deletions
diff --git a/GNUmakefile b/GNUmakefile index 6f9eb41c..e5914648 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -446,6 +446,7 @@ deb: CHECK_VARS = \ BUILDDIR=$(BUILDDIR) \ RGBDEF=$(RGBDEF) \ + PALMMAPDIR=$(PALMMAPDIR) \ BUILD_FIASCO=$(BUILD_FIASCO) \ JASPERLIB="$(JASPERLIB)" \ JBIGLIB="$(JBIGLIB)" \ @@ -512,6 +513,7 @@ colon :=: check-tree : PBM_TEST_PATH := $(subst $(space),$(colon),$(strip $(RBINDIRS))) check-tree : PBM_LIBRARY_PATH ?= $(BUILDDIR)/lib check-tree : RGBDEF ?= $(SRCDIR)/lib/rgb.txt +check-tree : PALMMAPDIR ?= $(SRCDIR)/converter/other/pnmtopalm # Create RESULTDIR. @@ -544,6 +546,7 @@ check-tree: $(TESTRANDOM) resultdir-backup check-package : PBM_TEST_PATH := $(PKGDIR)/bin check-package : PBM_LIBRARY_PATH := $(PKGDIR)/lib check-package : RGBDEF ?= $(PKGDIR)/misc/rgb.txt +check-package : PALMMAPDIR ?= $(PKGDIR)/misc/ check: check-package check-package: $(TESTRANDOM) resultdir-backup @@ -556,6 +559,7 @@ check-package: $(TESTRANDOM) resultdir-backup # Check after install +check-install: PALMMAPDIR ?= "" check-install: $(TESTRANDOM) resultdir-backup cd $(RESULTDIR); \ $(CHECK_VARS) \ diff --git a/test/Test-Order b/test/Test-Order index 92ffe7ef..9b280d12 100644 --- a/test/Test-Order +++ b/test/Test-Order @@ -82,6 +82,7 @@ symmetry.test # Format converter tests +pamtopdbimg.test pbmtog3.test 411toppm.test eyuvtoppm.test @@ -133,7 +134,9 @@ mda-roundtrip.test mgr-roundtrip.test mrf-roundtrip.test palm-roundtrip.test +palm-roundtrip2.test pcx-roundtrip.test +pdb-roundtrip.test pfm-roundtrip.test pi3-roundtrip.test pict-roundtrip.test diff --git a/test/palm-roundtrip2.ok b/test/palm-roundtrip2.ok new file mode 100644 index 00000000..0060d7b6 --- /dev/null +++ b/test/palm-roundtrip2.ok @@ -0,0 +1,5 @@ +438301914 101484 +438301914 101484 +438301914 101484 +438301914 101484 +438301914 101484 diff --git a/test/palm-roundtrip2.test b/test/palm-roundtrip2.test new file mode 100755 index 00000000..4c94df8c --- /dev/null +++ b/test/palm-roundtrip2.test @@ -0,0 +1,31 @@ +#! /bin/bash +# This script tests: pnmtopalm palmtopnm +# Also requires: pnmremap + +tmpdir=${tmpdir:-/tmp} +test256color_ppm=${tmpdir}/test256color.ppm + +if [ ${CHECK_TYPE} = install ] + then mapfile=$(netpbm-config --datadir)/palmcolor8.map + else mapfile=${PALMMAPDIR}/palmcolor8.map +fi + +if [ ! -f ${mapfile} ] + then + echo "Cannot find palmcolor8.map. Skipping." 1>&2 + exit 80; +fi + + +# Test. Should print 438301914 101484 +# 5 times + +pnmremap -mapfile=${mapfile} testimg.ppm | tee ${test256color_ppm} | cksum + +for flags in "" \ + "-scanline_compression" \ + "-rle_compression" \ + "-packbits_compression" + do pnmtopalm -colormap $flags ${test256color_ppm} | palmtopnm | cksum; done + +rm ${test256color_ppm} diff --git a/test/pamtopdbimg.ok b/test/pamtopdbimg.ok new file mode 100644 index 00000000..57258940 --- /dev/null +++ b/test/pamtopdbimg.ok @@ -0,0 +1,20 @@ +high compression +2 +1 +poor compression +1 +2 +long titles +268 +0 +268 +0 +0 +1 +large notefile +3344 +0 +68885 +0 +0 +1 diff --git a/test/pamtopdbimg.test b/test/pamtopdbimg.test new file mode 100755 index 00000000..267f6bc8 --- /dev/null +++ b/test/pamtopdbimg.test @@ -0,0 +1,86 @@ +#! /bin/bash +# This script tests: pamtopdbimg +# Also requires: pgmmake pgmnoise + +tmpdir=${tmpdir:-/tmp} +mono_pgm=${tmpdir}/graymono.pgm +noise_pgm=${tmpdir}/graynoise.pgm +text65533=${tmpdir}/ascii65533.txt +text65534=${tmpdir}/ascii65534.txt +text65597=${tmpdir}/ascii65597.txt + +# The PDB image format has a time stamp. This causes pamtopdbimg +# to produce slightly different output files with each invocation. + +# Test 1. High compression +# -maybecompressed should produce a compressed file +# Should print: +# 2 +# 1 +echo high compression +pgmmake 0.5 -maxval=15 160 160 > ${mono_pgm} +for flag in "-compressed" "-maybecompressed" "-uncompressed" + do + pamtopdbimg $flag ${mono_pgm} | wc -c + done | uniq -c | awk '{print $1}' +rm ${mono_pgm} + + +# Test 2. Poor compression +# -maybecompressed should produce a uncompressed file +# Should print: +# 1 +# 2 +echo poor compression +pgmnoise -maxval=15 -randomseed=0 160 160 > ${noise_pgm} +for flag in "-compressed" "-maybecompressed" "-uncompressed" + do + pamtopdbimg $flag ${noise_pgm} | wc -c + done | uniq -c | awk '{print $1}' +rm ${noise_pgm} + + +# Test 3. long titles +# Should succeed twice and fail once, producing: +# 268 +# 0 +# 268 +# 0 +# 1 +# 0 +echo long titles +for flag in "" "-title=0123456789012345678901234567890" \ + "-title=01234567890123456789012345678901" + do + pamtopdbimg $flag testgrid.pbm | wc -c ; echo ${PIPESTATUS[0]} + done + + +# Test 4. large notefile +# Should succeed twice and fail once, producing: +# 3344 +# 0 +# 68886 +# 0 +# 1 +# 0 +echo large notefile +awk 'BEGIN { ABC="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + abc="abcdefghijklmnopqrstuvwxyz"; + digits="0123456789"; string =""; + + while ( length(string) < 65597 ) + string = string ABC abc digits; + + print string }' > ${text65597} + +head -c 65533 ${text65597} > ${text65533} +head -c 65534 ${text65597} > ${text65534} +pamtopdbimg -uncompressed testgrid.pbm | wc -c + echo ${PIPESTATUS[0]} +pamtopdbimg -uncompressed -notefile=${text65533} testgrid.pbm | wc -c + echo ${PIPESTATUS[0]} +pamtopdbimg -uncompressed -notefile=${text65534} testgrid.pbm | wc -c + echo ${PIPESTATUS[0]} + +rm ${text65533} ${text65534} ${text65597} \ No newline at end of file diff --git a/test/pdb-roundtrip.ok b/test/pdb-roundtrip.ok new file mode 100644 index 00000000..cb920669 --- /dev/null +++ b/test/pdb-roundtrip.ok @@ -0,0 +1,18 @@ +pbm grid +2224198737 25671 +2224198737 25671 +2224198737 25671 +pbm tiled +0 0 0 +0 0 0 +0 0 0 +0 0 0 +pgm ellipse +0 0 0 +0 0 0 +0 0 0 +0 0 0 +pgm ellipse -4depth +0 0 0 +0 0 0 +0 0 0 diff --git a/test/pdb-roundtrip.test b/test/pdb-roundtrip.test new file mode 100755 index 00000000..a6de93d2 --- /dev/null +++ b/test/pdb-roundtrip.test @@ -0,0 +1,55 @@ +#! /bin/bash +# This script tests: pamtopdbimg pdbimgtopam +# Also requires: pnmtile pgmramp pamtopnm + +tmpdir=${tmpdir:-/tmp} +tiled_pbm=${tmpdir}/tiled.pbm +ellipse_pgm=${tmpdir}/ellipse.pgm + + +# Test 1. Should produce 2224198737 25671 +# 3 times +echo pbm grid +for flag in "-compressed" "-maybecompressed" "-uncompressed" + do + pamtopdbimg ${flag} testgrid.pbm | pdbimgtopam | cksum + done + + +# Test 2. Should produce 0 0 0 +# 4 times +echo pbm tiled +pnmtile 160 160 testgrid.pbm > ${tiled_pbm} +for flag in "" "-compressed" "-maybecompressed" "-uncompressed" + do + pamtopdbimg ${flag} ${tiled_pbm} | pdbimgtopam | pamtopnm | \ + cmp -s - ${tiled_pbm} + echo ${PIPESTATUS[0]} ${PIPESTATUS[1]} $? + done +rm ${tiled_pbm} + + +# Test 3. Should produce 0 0 0 +# 4 times +echo pgm ellipse +pgmramp -ellipse 160 160 -maxval=3 > ${ellipse_pgm} +for flag in "" "-compressed" "-maybecompressed" "-uncompressed" + do + pamtopdbimg ${flag} ${ellipse_pgm} | pdbimgtopam | \ + pamtopnm | pamdepth 3 | cmp -s - ${ellipse_pgm} + echo ${PIPESTATUS[0]} ${PIPESTATUS[1]} $? + done +rm ${ellipse_pgm} + + +# Test 3. Should produce 0 0 0 +# 3 times +echo pgm ellipse -4depth +pgmramp -ellipse 160 160 -maxval=15 > ${ellipse_pgm} +for flag in "-compressed" "-maybecompressed" "-uncompressed" + do + pamtopdbimg -4depth ${flag} ${ellipse_pgm} | pdbimgtopam | \ + pamtopnm | pamdepth 15 | cmp -s - ${ellipse_pgm} + echo ${PIPESTATUS[0]} ${PIPESTATUS[1]} $? + done +rm ${ellipse_pgm} \ No newline at end of file |