Break notmuch-test whenever a test script returns non-zero status. This happens either when some test from the script fails or when there is an error in the script.
This is especially useful in the latter case since the error may not appear in the final aggregated results. --- test/notmuch-test | 12 +++++++++++- 1 files changed, 11 insertions(+), 1 deletions(-) diff --git a/test/notmuch-test b/test/notmuch-test index b51045a..055467f 100755 --- a/test/notmuch-test +++ b/test/notmuch-test @@ -14,12 +14,20 @@ if [ ${BASH_VERSINFO[0]} -lt 4 ]; then exit 1 fi +set -e + +die () { + echo >&2 "Unexpected failure" +} + +trap 'die' 0 + cd $(dirname "$0") TESTS="basic new search json thread-naming raw reply dump-restore uuencode thread-order author-order from-guessing long-id encoding emacs maildir-sync" # Clean up any results from a previous run -rm -r test-results >/dev/null 2>/dev/null +rm -rf test-results >/dev/null 2>/dev/null # Run the tests for test in $TESTS; do @@ -31,3 +39,5 @@ done # Clean up rm -r test-results corpus.mail + +trap '' 0 -- 1.7.2.3