test: new: Fix intermittent test failures with --debug

Although messages are created in a particular order, it seems that
when they are created on a tmpfs, they do not always come back in the
same order, leading to the same files being ignored but being output
in a different order. This causes the test to fail because the outputs
being compared are the same.

Fix the failures by sorting the output of notmuch --debug and
comparing this to a hand-sorted version of its output.

Signed-off-by: Ethan Glasser-Camp <ethan@betacantrips.com>
This commit is contained in:
Ethan Glasser-Camp 2012-10-21 09:14:58 -04:00 committed by David Bremner
parent b7f7b573e4
commit 0d552ab6d0

View file

@ -189,17 +189,17 @@ touch "${MAIL_DIR}"/.git # change .git's mtime for notmuch new to rescan.
mkdir -p "${MAIL_DIR}"/one/two/three/.git mkdir -p "${MAIL_DIR}"/one/two/three/.git
notmuch new > /dev/null # ensure that files/folders will be printed in ASCII order. notmuch new > /dev/null # ensure that files/folders will be printed in ASCII order.
touch "${MAIL_DIR}"/{one,one/two,one/two/three}/ignored_file touch "${MAIL_DIR}"/{one,one/two,one/two/three}/ignored_file
output=$(NOTMUCH_NEW --debug 2>&1) output=$(NOTMUCH_NEW --debug 2>&1 | sort)
test_expect_equal "$output" \ test_expect_equal "$output" \
"(D) add_files_recursive, pass 1: explicitly ignoring ${MAIL_DIR}/.git "(D) add_files_recursive, pass 1: explicitly ignoring ${MAIL_DIR}/.git
(D) add_files_recursive, pass 1: explicitly ignoring ${MAIL_DIR}/one/two/three/.git (D) add_files_recursive, pass 1: explicitly ignoring ${MAIL_DIR}/one/two/three/.git
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/two/three/.git
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/two/three/ignored_file
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/two/ignored_file
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/ignored_file
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/.git (D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/.git
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/.ignored_hidden_file (D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/.ignored_hidden_file
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/ignored_file (D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/ignored_file
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/ignored_file
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/two/ignored_file
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/two/three/.git
(D) add_files_recursive, pass 2: explicitly ignoring ${MAIL_DIR}/one/two/three/ignored_file
No new mail." No new mail."