aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJameson Graef Rollins <jrollins@finestructure.net>2019-05-06 04:44:09 +0000
committerDavid Bremner <david@tethera.net>2019-05-07 06:55:31 -0300
commiteeff4319960d88e60c202dac4047913262d67d85 (patch)
tree239bd8c8de796f758fa50b0952c2f967011b98d8 /test
parent908d930d221413633ab7541f97eb7cf07bfc4a91 (diff)
tests: environment variable to specify that tests should be serialized
If NOTMUCH_TEST_SERIALIZE is non-null all tests will be run in series, rather than in parallel.
Diffstat (limited to 'test')
-rw-r--r--test/README8
-rwxr-xr-xtest/notmuch-test2
2 files changed, 7 insertions, 3 deletions
diff --git a/test/README b/test/README
index b378c3ff..3f54af58 100644
--- a/test/README
+++ b/test/README
@@ -43,7 +43,6 @@ these system tools. Most often the tests are written, reviewed and
tested on Linux system so such portability issues arise from time to
time.
-
Running Tests
-------------
The easiest way to run tests is to say "make test", (or simply run the
@@ -105,9 +104,14 @@ to with emacs, e.g.
make test TEST_CC=gcc TEST_CFLAGS="-g -O2"
+Parallel Execution
+------------------
+If either the moreutils or GNU "parallel" utility is available all
+tests will be run in parallel. If the NOTMUCH_TEST_SERIALIZE variable
+is non-null all tests will be executed sequentially.
+
Quiet Execution
---------------
-
Normally, when new script starts and when test PASSes you get a message
printed on screen. This printing can be disabled by setting the
NOTMUCH_TEST_QUIET variable to a non-null value. Message on test
diff --git a/test/notmuch-test b/test/notmuch-test
index a4b7a1eb..bd3e080a 100755
--- a/test/notmuch-test
+++ b/test/notmuch-test
@@ -40,7 +40,7 @@ fi
trap 'e=$?; kill $!; exit $e' HUP INT TERM
# Run the tests
-if command -v parallel >/dev/null ; then
+if test -z "$NOTMUCH_TEST_SERIALIZE" && command -v parallel >/dev/null ; then
if parallel -h | grep -q GNU ; then
echo "INFO: running tests with GNU parallel"
printf '%s\n' $TESTS | $TEST_TIMEOUT_CMD parallel