notmuch/test/notmuch-test
Dmitry Kurochkin 6dec2af55b test: remove ".sh" extension from the recently added Emacs tests
All test files, except for the recently added Emacs tests, do not have
".sh" extension.  So remove it from the new test files for consistency.
2012-02-03 21:12:12 -04:00

83 lines
1.6 KiB
Bash
Executable file

#!/usr/bin/env 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
cd $(dirname "$0")
TESTS="
basic
help-test
new
count
search
search-output
search-by-folder
search-position-overlap-bug
search-insufficient-from-quoting
search-limiting
tagging
json
multipart
thread-naming
raw
reply
reply-to-sender
dump-restore
uuencode
thread-order
author-order
from-guessing
long-id
encoding
emacs
emacs-large-search-buffer
emacs-subject-to-filename
maildir-sync
crypto
symbol-hiding
search-folder-coherence
atomicity
python
hooks
argument-parsing
emacs-test-functions
emacs-address-cleaning
"
TESTS=${NOTMUCH_TESTS:=$TESTS}
# Clean up any results from a previous run
rm -r test-results >/dev/null 2>/dev/null
# test for timeout utility
if command -v timeout >/dev/null; then
TEST_TIMEOUT_CMD="timeout 2m "
echo "INFO: using 2 minute timeout for tests"
else
TEST_TIMEOUT_CMD=""
fi
trap 'e=$?; kill $!; exit $e' HUP INT TERM
# Run the tests
for test in $TESTS; do
$TEST_TIMEOUT_CMD ./$test "$@" &
wait $!
done
trap - HUP INT TERM
# Report results
./aggregate-results.sh test-results/*
# Clean up
rm -rf test-results corpus.mail