X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=test%2Ftest-lib.sh;h=568e89f18024cc8e4350236e8ca0eb3dad3dd4c9;hb=f96ddb15f8d0145e1b877eb821e63d36dbabc71a;hp=791d2dc668e05dde0a0c4e5828db1dea8988e2b6;hpb=a34bb1f9fad7c547eec5c254ce8274f190491186;p=notmuch diff --git a/test/test-lib.sh b/test/test-lib.sh index 791d2dc6..568e89f1 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -497,17 +497,19 @@ test_expect_equal_file () test "$#" = 2 || error "bug in the test script: not 2 or 3 parameters to test_expect_equal" - output="$1" - expected="$2" + file1="$1" + basename1=`basename "$file1"` + file2="$2" + basename2=`basename "$file2"` if ! test_skip "$test_subtest_name" then - if diff -q "$expected" "$output" >/dev/null ; then + if diff -q "$file1" "$file2" >/dev/null ; then test_ok_ "$test_subtest_name" else testname=$this_test.$test_count - cp "$output" $testname.output - cp "$expected" $testname.expected - test_failure_ "$test_subtest_name" "$(diff -u $testname.expected $testname.output)" + cp "$file1" "$testname.$basename1" + cp "$file2" "$testname.$basename2" + test_failure_ "$test_subtest_name" "$(diff -u "$testname.$basename1" "$testname.$basename2")" fi fi } @@ -553,7 +555,7 @@ test_emacs_expect_t () { NOTMUCH_NEW () { - notmuch new | grep -v -E -e '^Processed [0-9]*( total)? file|Found [0-9]* total file' + notmuch new "${@}" | grep -v -E -e '^Processed [0-9]*( total)? file|Found [0-9]* total file' } notmuch_search_sanitize () @@ -985,6 +987,14 @@ test_emacs () { done fi + # Clear test-output output file. Most Emacs tests end with a + # call to (test-output). If the test code fails with an + # exception before this call, the output file won't get + # updated. Since we don't want to compare against an output + # file from another test, so start out with an empty file. + rm -f OUTPUT + touch OUTPUT + emacsclient --socket-name="$EMACS_SERVER" --eval "(progn $@)" } @@ -1070,6 +1080,7 @@ find_notmuch_path () # Test the binaries we have just built. The tests are kept in # test/ subdirectory and are run in 'trash directory' subdirectory. TEST_DIRECTORY=$(pwd) +notmuch_path=`find_notmuch_path "$TEST_DIRECTORY"` if test -n "$valgrind" then make_symlink () { @@ -1130,11 +1141,15 @@ then PATH=$GIT_VALGRIND/bin:$PATH GIT_EXEC_PATH=$GIT_VALGRIND/bin export GIT_VALGRIND + test -n "$notmuch_path" && MANPATH="$notmuch_path/man:$MANPATH" else # normal case - notmuch_path=`find_notmuch_path "$TEST_DIRECTORY"` - test -n "$notmuch_path" && PATH="$notmuch_path:$PATH" + if test -n "$notmuch_path" + then + PATH="$notmuch_path:$PATH" + MANPATH="$notmuch_path/man:$MANPATH" + fi fi -export PATH +export PATH MANPATH # Test repository test="tmp.$(basename "$0" .sh)"