X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2FT510-thread-replies.sh;h=5d6bea7ed7ab7fdd3b9d06b4c8002195da9282ab;hp=6837ff17663002cfb8c4f9f627f2715ed6d2d154;hb=8dcc38ce85ce084d3f0f3cbeac7e4a768e651614;hpb=045f0e455ac94e2393d0d729c9bbdf3459a4860f diff --git a/test/T510-thread-replies.sh b/test/T510-thread-replies.sh index 6837ff17..5d6bea7e 100755 --- a/test/T510-thread-replies.sh +++ b/test/T510-thread-replies.sh @@ -45,10 +45,10 @@ expected='[[[{"id": "foo@one.com", expected=`echo "$expected" | notmuch_json_show_sanitize` test_expect_equal_json "$output" "$expected" -test_begin_subtest "Prefer References to In-Reply-To" +test_begin_subtest "Prefer References to dodgy In-Reply-To" add_message '[id]="foo@two.com"' \ '[subject]=two' -add_message '[in-reply-to]=""' \ +add_message '[in-reply-to]="Your message of December 31 1999 "' \ '[references]=""' \ '[subject]="Re: two"' output=$(notmuch show --format=json 'subject:two' | notmuch_json_show_sanitize) @@ -101,12 +101,12 @@ expected='[[[{"id": "foo@three.com", "match": true, "excluded": false, expected=`echo "$expected" | notmuch_json_show_sanitize` test_expect_equal_json "$output" "$expected" -test_begin_subtest "Use last Reference" +test_begin_subtest "Use last Reference when In-Reply-To is dodgy" add_message '[id]="foo@four.com"' \ '[subject]="four"' add_message '[id]="bar@four.com"' \ '[subject]="not-four"' -add_message '[in-reply-to]=""' \ +add_message '[in-reply-to]=" (RFC822 4lyfe)"' \ '[references]=" "' \ '[subject]="neither"' output=$(notmuch show --format=json 'subject:four' | notmuch_json_show_sanitize) @@ -164,5 +164,62 @@ expected='[[[{"id": "XXXXX", "match": true, "excluded": false, expected=`echo "$expected" | notmuch_json_show_sanitize` test_expect_equal_json "$output" "$expected" +add_email_corpus threading + +test_begin_subtest "reply to ghost" +notmuch show --entire-thread=true id:000-real-root@example.org | grep ^Subject: | head -1 > OUTPUT +cat < EXPECTED +Subject: root message +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "reply to ghost (tree view)" +test_emacs '(notmuch-tree "id:000-real-root@example.org") + (notmuch-test-wait) + (test-output) + (delete-other-windows)' +cat < EXPECTED + 2016-06-17 Alice ┬►root message (inbox unread) + 2016-06-18 Alice ╰┬►child message (inbox unread) + 2016-06-17 Mallory ├─►fake root message (inbox unread) + 2016-06-18 Alice ├┬►grand-child message (inbox unread) + 2016-06-18 Alice │╰─►great grand-child message (inbox unread) + 2016-06-18 Daniel ╰─►grand-child message 2 (inbox unread) +End of search results. +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "reply to ghost (RT)" +notmuch show --entire-thread=true id:87bmc6lp3h.fsf@len.workgroup | grep ^Subject: | head -1 > OUTPUT +cat < EXPECTED +Subject: FYI: xxxx xxxxxxx xxxxxxxxxxxx xxx +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "reply to ghost (RT/tree view)" +test_emacs '(notmuch-tree "id:87bmc6lp3h.fsf@len.workgroup") + (notmuch-test-wait) + (test-output) + (delete-other-windows)' +cat < EXPECTED + 2016-06-19 Gregor Zattler ┬┬►FYI: xxxx xxxxxxx xxxxxxxxxxxx xxx (inbox unread) + 2016-06-19 via RT │╰─►[support.xxxxxxxxxxx-xxxxxxxxx-xxxxxxxxx.de #33575] AutoReply: FYI: xxxx xxxxxxx xxxxxxxxxxxx xxx (inbox unread) + 2016-06-26 via RT ╰─►[support.xxxxxxxxxxx-xxxxxxxxx-xxxxxxxxx.de #33575] Resolved: FYI: xxxx xxxxxxx xxxxxxxxxxxx xxx (inbox unread) +End of search results. +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "trusting reply-to (tree view)" +test_emacs '(notmuch-tree "id:B00-root@example.org") + (notmuch-test-wait) + (test-output) + (delete-other-windows)' +cat < EXPECTED + 2016-06-17 Alice ┬►root message (inbox unread) + 2016-06-18 Alice ╰┬►child message (inbox unread) + 2016-06-18 Alice ╰─►grand-child message (inbox unread) +End of search results. +EOF +test_expect_equal_file EXPECTED OUTPUT test_done