X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2FT000-basic.sh;h=7fbdcfa3036cd860b13647a1678efde2063ce621;hp=0a8d6cdf40fc3ecc83d05f5347cd73c67e62f5f8;hb=fc12f6f07b5ee6cbcf54a30116fe0a37f8f557cd;hpb=5de84d07526d330a46e50d955bdfeed8f629637d diff --git a/test/T000-basic.sh b/test/T000-basic.sh index 0a8d6cdf..7fbdcfa3 100755 --- a/test/T000-basic.sh +++ b/test/T000-basic.sh @@ -4,40 +4,24 @@ # test_description='the test framework itself.' - -################################################################ -# It appears that people try to run tests without building... - -if ! test -x ../notmuch -then - echo >&2 'You do not seem to have built notmuch yet.' - exit 1 -fi - -. ./test-lib.sh || exit 1 +. $(dirname "$0")/test-lib.sh || exit 1 ################################################################ # Test harness -test_expect_success 'success is reported like this' ' - : -' +test_begin_subtest 'success is reported like this' +test_expect_success ':' + +test_begin_subtest 'test runs if prerequisite is satisfied' test_set_prereq HAVEIT -haveit=no -test_expect_success HAVEIT 'test runs if prerequisite is satisfied' ' - test_have_prereq HAVEIT && - haveit=yes -' +test_expect_success 'test_have_prereq HAVEIT' +test_begin_subtest 'tests clean up after themselves' clean=no -test_expect_success 'tests clean up after themselves' ' - test_when_finished clean=yes -' +test_expect_success 'test_when_finished clean=yes' +test_begin_subtest 'tests clean up even after a failure' cleaner=no -test_expect_code 1 'tests clean up even after a failure' ' - test_when_finished cleaner=yes && - (exit 1) -' +test_expect_code 1 'test_when_finished cleaner=yes && (exit 1)' if test $clean$cleaner != yesyes then @@ -45,23 +29,22 @@ then exit 1 fi -test_expect_code 2 'failure to clean up causes the test to fail' ' - test_when_finished "(exit 2)" -' +test_begin_subtest 'failure to clean up causes the test to fail' +test_expect_code 2 'test_when_finished "(exit 2)"' -EXPECTED=$TEST_DIRECTORY/test.expected-output +EXPECTED=$NOTMUCH_SRCDIR/test/test.expected-output suppress_diff_date() { sed -e 's/\(.*\-\-\- test-verbose\.4\.\expected\).*/\1/' \ -e 's/\(.*\+\+\+ test-verbose\.4\.\output\).*/\1/' } test_begin_subtest "Ensure that test output is suppressed unless the test fails" -output=$(cd $TEST_DIRECTORY; NOTMUCH_TEST_QUIET= ./test-verbose 2>&1 | suppress_diff_date) +output=$(cd $TEST_DIRECTORY; NOTMUCH_TEST_QUIET= $NOTMUCH_SRCDIR/test/test-verbose 2>&1 | suppress_diff_date) expected=$(cat $EXPECTED/test-verbose-no | suppress_diff_date) test_expect_equal "$output" "$expected" test_begin_subtest "Ensure that -v does not suppress test output" -output=$(cd $TEST_DIRECTORY; NOTMUCH_TEST_QUIET= ./test-verbose -v 2>&1 | suppress_diff_date) +output=$(cd $TEST_DIRECTORY; NOTMUCH_TEST_QUIET= $NOTMUCH_SRCDIR/test/test-verbose -v 2>&1 | suppress_diff_date) expected=$(cat $EXPECTED/test-verbose-yes | suppress_diff_date) # Do not include the results of test-verbose in totals rm $TEST_DIRECTORY/test-results/test-verbose @@ -72,19 +55,15 @@ test_expect_equal "$output" "$expected" ################################################################ # Test mail store prepared in test-lib.sh -test_expect_success \ - 'test that mail store was created' \ - 'test -d "${MAIL_DIR}"' - +test_begin_subtest 'test that mail store was created' +test_expect_success 'test -d "${MAIL_DIR}"' +test_begin_subtest 'mail store should be empty' find "${MAIL_DIR}" -type f -print >should-be-empty -test_expect_success \ - 'mail store should be empty' \ - 'cmp -s /dev/null should-be-empty' +test_expect_success 'cmp -s /dev/null should-be-empty' -test_expect_success \ - 'NOTMUCH_CONFIG is set and points to an existing file' \ - 'test -f "${NOTMUCH_CONFIG}"' +test_begin_subtest 'NOTMUCH_CONFIG is set and points to an existing file' +test_expect_success 'test -f "${NOTMUCH_CONFIG}"' test_begin_subtest 'PATH is set to build directory' test_expect_equal \