Re: [PATCH] test: add broken tests for maildir syncing

2017-08-06 Thread David Bremner
Tomi Ollila  writes:

>
> +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

2017-08-05 Thread Tomi Ollila
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

2017-08-04 Thread David Bremner
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