UI tweaks to the test summary.
authorDavid Given <dg@cowlark.com>
Thu, 1 Dec 2016 23:10:33 +0000 (00:10 +0100)
committerDavid Given <dg@cowlark.com>
Thu, 1 Dec 2016 23:10:33 +0000 (00:10 +0100)
first/testsummary.sh

index be0842a..9f1002b 100755 (executable)
@@ -1,21 +1,33 @@
 #!/bin/sh
-notsucceeding=$(find "$@" ! -size 0)
 echo ""
-echo "$(echo $notsucceeding | wc -w) tests failed to pass"
-
-skipped=$(grep -l @@SKIPPED $notsucceeding)
-echo "$(echo $skipped | wc -w) were skipped (see build log for details)"
-
-timedout=$(grep -l @@TIMEDOUT $notsucceeding)
-echo "$(echo $timedout | wc -w) timed out"
 
-failed=$(grep -l @@FAIL $notsucceeding)
-echo "$(echo $failed | wc -w) failed"
+succeeding="$(find "$@" -size 0)"
+notsucceeding="$(find "$@" ! -size 0)"
+skipped="$(grep -l @@SKIPPED $notsucceeding)"
+timedout="$(grep -l @@TIMEDOUT $notsucceeding)"
+failed="$(grep -l @@FAIL $notsucceeding)"
 
-echo ""
 for a in $failed $timedout; do
     echo "**** $a"
     cat $a
     echo ""
 done
-exec test "$failed" == "" -o "$timedout" == ""
+
+echo "$(echo $succeeding | wc -w) tests passed"
+echo "$(echo $notsucceeding | wc -w) tests failed to pass"
+echo "$(echo $skipped | wc -w) were skipped (see build log for details)"
+echo "$(echo $timedout | wc -w) timed out"
+echo "$(echo $failed | wc -w) failed"
+echo ""
+
+if [ "$failed" != "" -o "$timedout" != "" ]; then
+       echo "Test status: SAD FACE (tests are failing)"
+       exit 1
+fi
+if [ "$succeeding" = "" ]; then
+       echo "Test status: PUZZLED FACE (all tests were skipped)"
+       exit 1
+fi
+echo "Test status: HAPPY FACE (all tests are passing)"
+exit 0
+