unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH] test: add broken tests for maildir syncing
@ 2017-08-04 21:38 David Bremner
  2017-08-05  8:04 ` Tomi Ollila
  0 siblings, 1 reply; 3+ messages in thread
From: David Bremner @ 2017-08-04 21:38 UTC (permalink / raw)
  To: notmuch, notmuch

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

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] test: add broken tests for maildir syncing
  2017-08-04 21:38 [PATCH] test: add broken tests for maildir syncing David Bremner
@ 2017-08-05  8:04 ` Tomi Ollila
  2017-08-06 19:46   ` David Bremner
  0 siblings, 1 reply; 3+ messages in thread
From: Tomi Ollila @ 2017-08-05  8:04 UTC (permalink / raw)
  To: David Bremner, notmuch, notmuch

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] test: add broken tests for maildir syncing
  2017-08-05  8:04 ` Tomi Ollila
@ 2017-08-06 19:46   ` David Bremner
  0 siblings, 0 replies; 3+ messages in thread
From: David Bremner @ 2017-08-06 19:46 UTC (permalink / raw)
  To: Tomi Ollila, notmuch, notmuch

Tomi Ollila <tomi.ollila@iki.fi> 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

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-08-06 19:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-04 21:38 [PATCH] test: add broken tests for maildir syncing David Bremner
2017-08-05  8:04 ` Tomi Ollila
2017-08-06 19:46   ` David Bremner

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).