about summary refs log tree commit diff
path: root/test/ppmpat-random.test
diff options
context:
space:
mode:
Diffstat (limited to 'test/ppmpat-random.test')
-rwxr-xr-xtest/ppmpat-random.test30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/ppmpat-random.test b/test/ppmpat-random.test
new file mode 100755
index 00000000..d9f69c18
--- /dev/null
+++ b/test/ppmpat-random.test
@@ -0,0 +1,30 @@
+#! /bin/bash
+# This script tests: ppmpat
+# Also requires:
+
+# TODO: Write tests for squig and poles.  It appears that they are
+# sensitive to differences in floating point math.
+
+# These tests require random numbers.
+
+testrandom -q
+case $? in
+   81)
+   # Test 1. Should print: 2219119109 36015
+   ppmpat --randomseed=0 -camo 100 120 | cksum
+
+   # Test 2. Should print: 3436846137 16813
+   ppmpat --randomseed=0 -anticamo 80 70 | cksum
+
+   # Test 3. Should print: 908097729 16813
+   ppmpat --randomseed=0 --color \
+     rgb:55/c0/34,rgb:0/ff/0,rgb:0/ee/0,rgb:0/cd/0,rgb:0/8b/0,rgb:4f/4f/2f \
+     -camo 80 70 | cksum
+   ;;
+
+   8[02-9] | 90)
+       echo "Skipping: random number generator is not glibc." 1>&2
+       exit 80;;
+
+   *)  exit 1;;  # testrandom failed
+esac