test: implement and document NOTMUCH_TEST_QUIET variable usage

When NOTMUCH_TEST_QUIET environment variable is set to non-null value
messages when new test script starts and when test PASSes are disabled.
This eases picking the cases when tests FAIL (as those are still printed).
This commit is contained in:
Tomi Ollila 2013-12-05 14:46:00 +02:00 committed by David Bremner
parent f05e7f3ce5
commit 88e6a2995a
3 changed files with 18 additions and 3 deletions

View file

@ -76,6 +76,14 @@ the tests in one of the following ways.
TEST_EMACS=my-special-emacs TEST_EMACSCLIENT=my-emacsclient ./emacs TEST_EMACS=my-special-emacs TEST_EMACSCLIENT=my-emacsclient ./emacs
make test TEST_EMACS=my-special-emacs TEST_EMACSCLIENT=my-emacsclient make test TEST_EMACS=my-special-emacs TEST_EMACSCLIENT=my-emacsclient
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
failures and skips are still printed.
Skipping Tests Skipping Tests
-------------- --------------
If, for any reason, you need to skip one or more tests, you can do so If, for any reason, you need to skip one or more tests, you can do so

View file

@ -74,12 +74,12 @@ suppress_diff_date() {
} }
test_begin_subtest "Ensure that test output is suppressed unless the test fails" test_begin_subtest "Ensure that test output is suppressed unless the test fails"
output=$(cd $TEST_DIRECTORY; ./test-verbose 2>&1 | suppress_diff_date) output=$(cd $TEST_DIRECTORY; NOTMUCH_TEST_QUIET= ./test-verbose 2>&1 | suppress_diff_date)
expected=$(cat $EXPECTED/test-verbose-no | suppress_diff_date) expected=$(cat $EXPECTED/test-verbose-no | suppress_diff_date)
test_expect_equal "$output" "$expected" test_expect_equal "$output" "$expected"
test_begin_subtest "Ensure that -v does not suppress test output" test_begin_subtest "Ensure that -v does not suppress test output"
output=$(cd $TEST_DIRECTORY; ./test-verbose -v 2>&1 | suppress_diff_date) output=$(cd $TEST_DIRECTORY; NOTMUCH_TEST_QUIET= ./test-verbose -v 2>&1 | suppress_diff_date)
expected=$(cat $EXPECTED/test-verbose-yes | suppress_diff_date) expected=$(cat $EXPECTED/test-verbose-yes | suppress_diff_date)
# Do not include the results of test-verbose in totals # Do not include the results of test-verbose in totals
rm $TEST_DIRECTORY/test-results/test-verbose rm $TEST_DIRECTORY/test-results/test-verbose

View file

@ -198,7 +198,10 @@ print_test_description ()
echo $this_test: "Testing ${test_description}" echo $this_test: "Testing ${test_description}"
test_description_printed=1 test_description_printed=1
} }
print_test_description if [ -z "$NOTMUCH_TEST_QUIET" ]
then
print_test_description
fi
exec 5>&1 exec 5>&1
@ -717,6 +720,9 @@ test_ok_ () {
return return
fi fi
test_success=$(($test_success + 1)) test_success=$(($test_success + 1))
if test -n "$NOTMUCH_TEST_QUIET"; then
return 0
fi
say_color pass "%-6s" "PASS" say_color pass "%-6s" "PASS"
echo " $test_subtest_name" echo " $test_subtest_name"
} }
@ -727,6 +733,7 @@ test_failure_ () {
return return
fi fi
test_failure=$(($test_failure + 1)) test_failure=$(($test_failure + 1))
print_test_description
test_failure_message_ "FAIL" "$test_subtest_name" "$@" test_failure_message_ "FAIL" "$test_subtest_name" "$@"
test "$immediate" = "" || { GIT_EXIT_OK=t; exit 1; } test "$immediate" = "" || { GIT_EXIT_OK=t; exit 1; }
return 1 return 1