From 19d133f4a6b2be47e7266264017a67061e3eff31 Mon Sep 17 00:00:00 2001 From: David Phillips Date: Wed, 18 May 2016 14:06:23 +1200 Subject: Testing: Add expectations on stderr for error cases --- test/test.sh | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'test/test.sh') 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 -- cgit v1.1