about summary refs log tree commit diff
path: root/test/pnmindex.test
diff options
context:
space:
mode:
Diffstat (limited to 'test/pnmindex.test')
-rwxr-xr-xtest/pnmindex.test60
1 files changed, 60 insertions, 0 deletions
diff --git a/test/pnmindex.test b/test/pnmindex.test
new file mode 100755
index 00000000..51e61532
--- /dev/null
+++ b/test/pnmindex.test
@@ -0,0 +1,60 @@
+#! /bin/sh
+# This script tests: pnmindex
+# Also requires: pamcat pamscale pbmtext pnmcolormap pnmindex
+# Also requires: pnminvert pnmquant pnmremap 
+
+echo "Test 1. Should print 3391481002 889"
+pnmindex maze.pbm | cksum
+
+echo "Test 2. Should print 1998876959 5290 twice"
+pnmindex maze.pbm maze.pbm maze.pbm maze.pbm maze.pbm maze.pbm | cksum
+pnmindex -noquant maze.pbm maze.pbm maze.pbm maze.pbm maze.pbm maze.pbm | cksum
+
+echo "Test 3. Should print 3099638253 5290"
+pnmindex -black maze.pbm maze.pbm maze.pbm maze.pbm maze.pbm maze.pbm | cksum
+
+echo "Test 4. Should print 1397700642 3160"
+pnmindex -size 20 -across=3 testgrid.pbm testgrid.pbm testgrid.pbm \
+         testgrid.pbm testgrid.pbm testgrid.pbm | cksum
+
+echo "Test 5. Should print 2303488589 28514"
+pnmindex testimg.ppm | cksum
+
+echo "Test 6. Should print 1706277976 100455"
+pnmindex -size 50 -across=2 testimg.ppm testimg.ppm testimg.ppm \
+         testimg.ppm testimg.ppm testimg.ppm | cksum
+
+echo "Test 7. Should print 801388440 100455"
+pnmindex -size 50 -across=2 -noquant testimg.ppm testimg.ppm testimg.ppm \
+         testimg.ppm testimg.ppm testimg.ppm | cksum
+
+
+echo "Test Invalid"
+
+test_out=${tmpdir}/test_out
+n=1
+
+# define function
+invalidCmd () { $1 > ${test_out} && printf "Unexpected success $n " || \
+  printf "Expected failure $n "
+  test -s ${test_out} && echo "(unexpected output)" || echo "(no output)"
+  rm -f ${test_out}
+  n=$(($n + 1)); }
+
+echo 1>&2
+echo "Invalid command-line arguments." 1>&2
+echo "Error messages should appear below the line." 1>&2
+echo "-----------------------------------------------------------" 1>&2
+
+invalidCmd "pnmindex -size -1 testgrid.pbm"
+invalidCmd "pnmindex -size  0 testgrid.pbm"
+invalidCmd "pnmindex -size    testgrid.pbm"
+invalidCmd "pnmindex -across -1 testgrid.pbm"
+invalidCmd "pnmindex -across  0 testgrid.pbm"
+invalidCmd "pnmindex -across    testgrid.pbm"
+invalidCmd "pnmindex -colors -1 testgrid.pbm"
+invalidCmd "pnmindex -colors  0 testgrid.pbm"
+invalidCmd "pnmindex -colors    testgrid.pbm"
+invalidCmd "pnmindex -quant -noquant testgrid.pbm"
+invalidCmd "pnmindex -colors 100 -noquant testgrid.pbm"
+invalidCmd "pnmindex"