Re: [PATCH] test: add broken tests for maildir syncing
Tomi Ollilawrites: > > +notmuch search "subject:\"$tag in new\"" | notmuch_search_sanitize > > output > I was just telling someone in Montreal that one of the great helps I had in notmuch was someone who fixes my shell mistakes :). pushed, amended as suggested, d ___ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch
Re: [PATCH] test: add broken tests for maildir syncing
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 ___ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch
[PATCH] test: add broken tests for maildir syncing
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 +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 ___ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch