[PATCH] test: add broken tests for maildir syncing

Tomi Ollila tomi.ollila at iki.fi
Sat Aug 5 01:04:39 PDT 2017


On Fri, Aug 04 2017, David Bremner wrote:

> Users should be able to specify synced tags in new.tags
> ---
>
> Anarcat had an interesting idea about using "flagged" in new.tags, but
> it doesn't work, because of (I think) the following code:
>
> 	for (tag = state->new_tags; *tag != NULL; tag++)
> 	    notmuch_message_add_tag (message, *tag);
> 	if (state->synchronize_flags)
> 	    notmuch_message_maildir_flags_to_tags (message);
>
> i.e. the tags are removed because the newly delivered message doesn't
> have them.
>
> FWIW, notmuch-insert does the right thing, I think
>
>  test/T340-maildir-sync.sh | 24 +++++++++++++++++++++++-
>  1 file changed, 23 insertions(+), 1 deletion(-)
>
> diff --git a/test/T340-maildir-sync.sh b/test/T340-maildir-sync.sh
> index 959bf8d8..172c22eb 100755
> --- a/test/T340-maildir-sync.sh
> +++ b/test/T340-maildir-sync.sh
> @@ -181,11 +181,33 @@ test_expect_equal "$(cd $MAIL_DIR/cur/; ls non-compliant*)" "non-compliant-maild
>  
>  test_begin_subtest "Files in new/ get default synchronized tags"
>  OLDCONFIG=$(notmuch config get new.tags)
> -notmuch config set new.tags test
> +notmuch config set new.tags test;unread
>  add_message [subject]='"File in new/"' [dir]=new [filename]='file-in-new'
>  notmuch config set new.tags $OLDCONFIG
>  notmuch search 'subject:"File in new"' | notmuch_search_sanitize > output
>  test_expect_equal "$(< output)" \
>  "thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; File in new/ (test unread)"
>  
> +test_begin_subtest "unread is not mandatory in new/"
> +test_subtest_known_broken
> +OLDCONFIG=$(notmuch config get new.tags)
> +notmuch config set new.tags test
> +add_message [subject]='"File in new/"' [dir]=new [filename]='file-in-new'
> +notmuch config set new.tags $OLDCONFIG
> +notmuch search 'subject:"File in new"' | notmuch_search_sanitize > output
> +test_expect_equal "$(< output)" \
> +"thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; File in new/ (test)"
> +
> +for tag in draft flagged passed replied; do
> +
> +    test_begin_subtest "$tag is valid in new.tags"
> +    test_subtest_known_broken
> +    OLDCONFIG=$(notmuch config get new.tags)
> +    notmuch config set new.tags "$tag"
> +    add_message [subject]="\"$tag sync in new\"" [dir]=new
> +    notmuch config set new.tags $OLDCONFIG
> +    notmuch search subject:"$tag in new" | notmuch_search_sanitize > output

+    notmuch search "subject:\"$tag in new\"" | notmuch_search_sanitize > output

> +    test_expect_equal "$(< output)" \
> +		      "thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; $tag sync in new ($tag)"
> +done
>  test_done
> -- 
> 2.13.2


More information about the notmuch mailing list