notmuch/test/notmuch-test
Michal Sojka f22a7ec1e2 test: Break on test script (or other) error
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.
2010-11-16 11:28:06 -08:00

43 lines
938 B
Bash
Executable file

#!/bin/bash
# Run tests
#
# Copyright (c) 2005 Junio C Hamano
#
# Adapted from a Makefile to a shell script by Carl Worth (2010)
if [ ${BASH_VERSINFO[0]} -lt 4 ]; then
echo "Error: The notmuch test suite requires a bash version >= 4.0"
echo "due to use of associative arrays within the test suite."
echo "Please try again with a newer bash (or help us fix the"
echo "test suite to be more portable). Thanks."
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 -rf test-results >/dev/null 2>/dev/null
# Run the tests
for test in $TESTS; do
./$test "$@"
done
# Report results
./aggregate-results.sh test-results/*
# Clean up
rm -r test-results corpus.mail
trap '' 0