diff options
author | Louis Rilling <l.rilling@av7.net> | 2012-12-19 22:32:27 +0100 |
---|---|---|
committer | David Bremner <bremner@debian.org> | 2013-09-03 20:41:51 -0300 |
commit | a9b2135c75874f871fa8e97c8fca965654577772 (patch) | |
tree | b3133b2749df30817bfbbfdd0c89cc970aa9b09d /test | |
parent | 4229966dce6588f3d890ac648a059e31747f3bd5 (diff) |
tags_to_maildir_flags: Don't rename if no flags change
notmuch_message_tags_to_maildir_flags() unconditionally moves messages from
maildir directory "new/" to maildir directory "cur/", which makes messages lose
their "new" status in the MUA. However some users want to keep this "new"
status after, for instance, an auto-tagging of new messages.
However, as Austin mentioned and according to the maildir specification,
messages living in "new/" are not allowed to have flags, even if mutt allows it
to happen. For this reason, this patch prevents moving messages from "new/" to
"cur/", only if no flags have to be changed. It's hopefully enough to satisfy
mutt (and maybe other MUAs showing the "new" status) users checking the "new"
status.
Changelog:
* v2: Fix bool type as well as NULL returned despite having no errors (Austin
Clements)
* v4: Tag the related test (contributed by Michal Sojka) as working
Signed-off-by: Louis Rilling <l.rilling@av7.net>
[Condition for keeping messages in new/ was extended to satisfy all
tests from the previous patch. -Michal Sojka]
[Added by David Bremner, to keep the tests passing at each commit]
update insert tests for new maildir synchronization rules
As of id:1355952747-27350-4-git-send-email-sojkam1@fel.cvut.cz
we are more conservative about moving messages from ./new to ./cur.
This updates the insert tests to match
Diffstat (limited to 'test')
-rwxr-xr-x | test/insert | 6 | ||||
-rwxr-xr-x | test/maildir-sync | 1 |
2 files changed, 3 insertions, 4 deletions
diff --git a/test/insert b/test/insert index 021edb62..1718120d 100755 --- a/test/insert +++ b/test/insert @@ -82,7 +82,7 @@ gen_insert_msg notmuch insert --folder=Drafts < "$gen_msg_filename" output=$(notmuch search --output=files folder:Drafts) dirname=$(dirname "$output") -test_expect_equal "$dirname" "$MAIL_DIR/Drafts/cur" +test_expect_equal "$dirname" "$MAIL_DIR/Drafts/new" test_begin_subtest "Insert message into folder, add/remove tags" gen_insert_msg @@ -99,14 +99,14 @@ gen_insert_msg notmuch insert --folder=F --create-folder +folder < "$gen_msg_filename" output=$(notmuch search --output=files folder:F tag:folder) basename=$(basename "$output") -test_expect_equal_file "$gen_msg_filename" "$MAIL_DIR/F/cur/${basename}" +test_expect_equal_file "$gen_msg_filename" "$MAIL_DIR/F/new/${basename}" test_begin_subtest "Insert message, create subfolder" gen_insert_msg notmuch insert --folder=F/G/H/I/J --create-folder +folder < "$gen_msg_filename" output=$(notmuch search --output=files folder:F/G/H/I/J tag:folder) basename=$(basename "$output") -test_expect_equal_file "$gen_msg_filename" "${MAIL_DIR}/F/G/H/I/J/cur/${basename}" +test_expect_equal_file "$gen_msg_filename" "${MAIL_DIR}/F/G/H/I/J/new/${basename}" test_begin_subtest "Insert message, create existing subfolder" gen_insert_msg diff --git a/test/maildir-sync b/test/maildir-sync index b2ac89ff..33d2c585 100755 --- a/test/maildir-sync +++ b/test/maildir-sync @@ -84,7 +84,6 @@ test_expect_equal "$output" "No new mail." # creating all necessary database state for those directories. test_begin_subtest "Adding non-maildir tags does not move message from new to cur" -test_subtest_known_broken add_message [subject]='"Message to stay in new"' \ [date]='"Sat, 01 Jan 2000 12:00:00 -0000"' \ [filename]='message-to-stay-in-new' [dir]=new |