summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2010-04-15 15:18:30 -0700
committerCarl Worth <cworth@cworth.org>2010-04-15 15:18:30 -0700
commitcddeaa59ab9c85ae4a09cae769b8677fd60141b8 (patch)
tree4e25d73b39e5156911c18e7dcc5bb94c42406e29
parent004ed3362f7cbc46a118faf6c380da1bc5bd3f78 (diff)
make test: Actually count and report on failures.
Hurrah---no more manual verification of that PASS column. This means that "make test" can actually be a useful part of the release process now, (since it will exit with non-zero status if there are any failures).
-rwxr-xr-xtest/notmuch-test24
1 files changed, 19 insertions, 5 deletions
diff --git a/test/notmuch-test b/test/notmuch-test
index 2a2c2e5..53ee189 100755
--- a/test/notmuch-test
+++ b/test/notmuch-test
@@ -154,17 +154,23 @@ add_message ()
$NOTMUCH new > /dev/null
}
+tests=0
+test_failures=0
+
pass_if_equal ()
{
output=$1
expected=$2
+ tests=$((tests + 1))
+
if [ "$output" = "$expected" ]; then
echo " PASS"
else
echo " FAIL"
echo " Expected output: $expected"
echo " Actual output: $output"
+ test_failures=$((test_failures + 1))
fi
}
@@ -623,9 +629,17 @@ printf " Searching returns all three messages in one thread..."
output=$($NOTMUCH search foo | notmuch_search_sanitize)
pass_if_equal "$output" "thread:XXX 2000-01-01 [3/3] Notmuch Test Suite; brokenthreadtest (inbox unread)"
-cat <<EOF
-Notmuch test suite complete.
+echo ""
+echo "Notmuch test suite complete."
-Intermediate state can be examined in:
- ${TEST_DIR}
-EOF
+if [ "$test_failures" = "0" ]; then
+ echo "All $tests tests passed."
+ rm -rf ${TEST_DIR}
+else
+ echo "$test_failures/$tests tests failed. The failures can be investigated in:"
+ echo "${TEST_DIR}"
+fi
+
+echo ""
+
+exit $test_failures