When notmuch sources are at a symlinked path, some tests fail because one part of the test uses physical path and another uses logical path (with symlinks). For example the following test output is produced when the test is started from /home/src/symlink-to-notmuch, which is a symlink to /home/src/notmuch. FAIL notmuch-fcc-dirs set to a string --- T310-emacs.26.OUTPUT 2015-12-29 08:54:29.055878637 +0000 +++ T310-emacs.26.EXPECTED 2015-12-29 08:54:29.055878637 +0000 @@ -1,5 +1,5 @@ From: Notmuch Test Suite <test_suite@notmuchmail.org> To: Subject: -Fcc: /home/src/notmuch/test/tmp.T310-emacs/mail/sent-string +Fcc: /home/src/symlink-to-notmuch/test/tmp.T310-emacs/mail/sent-string --text follows this line-- nil This commit makes all paths in test scripts physical. With it, all tests pass even when run from a symlinked directory. --- test/test-lib-common.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test-lib-common.sh b/test/test-lib-common.sh index 5eb618c..4e17b78 100644 --- a/test/test-lib-common.sh +++ b/test/test-lib-common.sh @@ -48,7 +48,7 @@ restore_database () { # Test the binaries we have just built. The tests are kept in # test/ subdirectory and are run in 'trash directory' subdirectory. -TEST_DIRECTORY=$(pwd) +TEST_DIRECTORY=$(pwd -P) notmuch_path=`find_notmuch_path "$TEST_DIRECTORY"` # configure output -- 2.6.4