notmuch/test/search-folder-coherence
Carl Worth 671ffbb766 test: Use increment_mtime rather than sleep
The sleep was to force the directory's mtime to advance between the
previous notmuch new and the subsequent rm;notmuch new.

The current convention is to use the existing increment_mtime function
for this purpose, (which avoids the test suite being slowed down by
calls to sleep).

Thanks to Austin Clements for noticing this undesired sleep.
(cherry picked from commit 55a78d5dbd)
2011-06-29 21:58:39 -03:00

47 lines
1.4 KiB
Bash
Executable file

#!/usr/bin/env bash
test_description='folder tags removed and added through file renames remain consistent'
. ./test-lib.sh
test_begin_subtest "No new messages"
output=$(NOTMUCH_NEW)
test_expect_equal "$output" "No new mail."
test_begin_subtest "Single new message"
generate_message
file_x=$gen_msg_filename
id_x=$gen_msg_id
output=$(NOTMUCH_NEW)
test_expect_equal "$output" "Added 1 new message to the database."
test_begin_subtest "Add second folder for same message"
dir=$(dirname $file_x)
mkdir $dir/spam
cp $file_x $dir/spam
output=$(NOTMUCH_NEW)
test_expect_equal "$output" "No new mail."
test_begin_subtest "Multiple files for same message"
cat <<EOF >EXPECTED
MAIL_DIR/msg-001
MAIL_DIR/spam/msg-001
EOF
notmuch search --output=files id:$id_x | sed -e "s,$MAIL_DIR,MAIL_DIR," >OUTPUT
test_expect_equal_file OUTPUT EXPECTED
test_begin_subtest "Test matches folder:spam"
output=$(notmuch search folder:spam)
test_expect_equal "$output" "thread:0000000000000001 2001-01-05 [1/1] Notmuch Test Suite; Test message #1 (inbox unread)"
test_begin_subtest "Remove folder:spam copy of email"
rm $dir/spam/$(basename $file_x)
increment_mtime $dir/spam
output=$(NOTMUCH_NEW)
test_expect_equal "$output" "No new mail. Detected 1 file rename."
test_begin_subtest "No mails match the folder:spam search"
output=$(notmuch search folder:spam)
test_expect_equal "$output" ""
test_done