+if test -z "$NOTMUCH_TEST_SERIALIZE" && command -v parallel >/dev/null ; then
+ test -t 1 && export COLORS_WITHOUT_TTY=t || :
+ if parallel --version 2>&1 | grep -q GNU ; then
+ echo "INFO: running tests with GNU parallel"
+ printf '%s\n' $TESTS | $TEST_TIMEOUT_CMD parallel
+ else
+ echo "INFO: running tests with moreutils parallel"
+ $TEST_TIMEOUT_CMD parallel -- $TESTS
+ fi
+ RES=$?
+ if [[ $RES != 0 ]]; then
+ META_FAILURE="parallel test suite returned error code $RES"
+ fi
+else
+ for test in $TESTS; do
+ $TEST_TIMEOUT_CMD $test "$@" &
+ wait $!
+ # If the test failed without producing results, then it aborted,
+ # so we should abort, too.
+ RES=$?
+ testname=$(basename $test .sh)
+ if [[ $RES != 0 && ! -e "$NOTMUCH_BUILDDIR/test/test-results/$testname" ]]; then
+ META_FAILURE="Aborting on $testname (returned $RES)"
+ break
+ fi
+ done
+fi