mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-22 02:48:08 +01:00
f22a7ec1e2
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.
43 lines
938 B
Bash
Executable file
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
|