diff options
author | David Phillips <dbphillipsnz@gmail.com> | 2016-05-18 14:06:23 +1200 |
---|---|---|
committer | David Phillips <dbphillipsnz@gmail.com> | 2016-05-18 14:07:00 +1200 |
commit | 19d133f4a6b2be47e7266264017a67061e3eff31 (patch) | |
tree | f053189de228296219043115f8019b11c621178e | |
parent | 11608a72784bc821d0acbaabfb00fcb652bf40f2 (diff) | |
download | pgm-interlace-19d133f4a6b2be47e7266264017a67061e3eff31.tar.xz |
Testing: Add expectations on stderr for error cases
-rw-r--r-- | test/error/bad-magic.stderr.log.expected | 1 | ||||
-rw-r--r-- | test/error/empty-frame.stderr.log.expected | 1 | ||||
-rw-r--r-- | test/error/header-mismatch.stderr.log.expected | 1 | ||||
-rw-r--r-- | test/error/long-magic-token.stderr.log.expected | 2 | ||||
-rw-r--r-- | test/error/non-positive-dimension.stderr.log.expected | 1 | ||||
-rw-r--r-- | test/error/not-square.stderr.log.expected | 1 | ||||
-rw-r--r-- | test/error/truncated-input.stderr.log.expected | 2 | ||||
-rw-r--r-- | test/error/zero-white.stderr.log.expected | 1 | ||||
-rwxr-xr-x | test/test.sh | 12 |
9 files changed, 18 insertions, 4 deletions
diff --git a/test/error/bad-magic.stderr.log.expected b/test/error/bad-magic.stderr.log.expected new file mode 100644 index 0000000..4f61a07 --- /dev/null +++ b/test/error/bad-magic.stderr.log.expected @@ -0,0 +1 @@ +parse_header: magic number does not check out, stop diff --git a/test/error/empty-frame.stderr.log.expected b/test/error/empty-frame.stderr.log.expected new file mode 100644 index 0000000..4f61a07 --- /dev/null +++ b/test/error/empty-frame.stderr.log.expected @@ -0,0 +1 @@ +parse_header: magic number does not check out, stop diff --git a/test/error/header-mismatch.stderr.log.expected b/test/error/header-mismatch.stderr.log.expected new file mode 100644 index 0000000..41b503c --- /dev/null +++ b/test/error/header-mismatch.stderr.log.expected @@ -0,0 +1 @@ +Error: '../input/white-whiteval.pgm' doesn't have identical header to '../input/white.pgm', stop diff --git a/test/error/long-magic-token.stderr.log.expected b/test/error/long-magic-token.stderr.log.expected new file mode 100644 index 0000000..f747f09 --- /dev/null +++ b/test/error/long-magic-token.stderr.log.expected @@ -0,0 +1,2 @@ +read_token: token too large for buffer +parse_header: failed to read magic number diff --git a/test/error/non-positive-dimension.stderr.log.expected b/test/error/non-positive-dimension.stderr.log.expected new file mode 100644 index 0000000..200841a --- /dev/null +++ b/test/error/non-positive-dimension.stderr.log.expected @@ -0,0 +1 @@ +check_sanity: image dimensions must be positive diff --git a/test/error/not-square.stderr.log.expected b/test/error/not-square.stderr.log.expected new file mode 100644 index 0000000..05380e1 --- /dev/null +++ b/test/error/not-square.stderr.log.expected @@ -0,0 +1 @@ +check_sanity: 2 images of 300x100 cannot interlace to a square image 100x100 diff --git a/test/error/truncated-input.stderr.log.expected b/test/error/truncated-input.stderr.log.expected new file mode 100644 index 0000000..23d2a2d --- /dev/null +++ b/test/error/truncated-input.stderr.log.expected @@ -0,0 +1,2 @@ +Full image size will be 300x300, using 3 images +Unexpected EOF on file 0 at row 114; pgm input truncated? Stop. diff --git a/test/error/zero-white.stderr.log.expected b/test/error/zero-white.stderr.log.expected new file mode 100644 index 0000000..9ba023c --- /dev/null +++ b/test/error/zero-white.stderr.log.expected @@ -0,0 +1 @@ +check_sanity: white value must be positive diff --git a/test/test.sh b/test/test.sh index 6ca0d41..d916a5b 100755 --- a/test/test.sh +++ b/test/test.sh @@ -2,18 +2,18 @@ fail() { - echo -e '[\e[1;31mFAIL\e[0m] '$i + echo -e '[\e[1;31mFAIL\e[0m] '$i $@ } xfail() { - echo -e '[\e[1;35mXFAIL\e[0m] '$i + echo -e '[\e[1;35mXFAIL\e[0m] '$i $@ } pass() { - echo -e '[\e[0;32mPASS\e[0m] '$i + echo -e '[\e[0;32mPASS\e[0m] '$i $@ } ######################### @@ -30,12 +30,16 @@ for i in {pass,error,xfail}/*.sh ; do expected="$name.pgm.expected" out="$name.pgm.out" log="$name.stderr.log" + log_expected="$log.expected" ./$(basename $i) 2> "$log" result=$? if [ -f "$expected" ] ; then diff "$expected" "$out" result=$? fi + if [ -f "$log_expected" ] ; then + diff "$log_expected" "$log" || fail stderr doesn\'t match + fi case $test_type in pass) if [ $result -eq 0 ] ; then @@ -64,6 +68,6 @@ for i in {pass,error,xfail}/*.sh ; do ;; esac - rm -f "$out" "$log" + rm -f "$out" # "$log" popd > /dev/null done |