X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=test%2FT000-basic.sh;h=642f918d20398c4b9b8f028183cfd10e130da5e8;hb=HEAD;hp=0a8d6cdf40fc3ecc83d05f5347cd73c67e62f5f8;hpb=e4164dfdc36e5c95224c75ebc988c603d0e2aa27;p=notmuch diff --git a/test/T000-basic.sh b/test/T000-basic.sh index 0a8d6cdf..642f918d 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 -suppress_diff_date() { +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,21 +55,18 @@ 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_subtest_broken_for_installed test_expect_equal \ "$(dirname ${TEST_DIRECTORY})" \ "$(echo $PATH|cut -f1 -d: | sed -e 's,/test/valgrind/bin$,,')"