From: Daniel Kahn Gillmor Date: Fri, 14 Jul 2017 20:14:22 +0000 (+0200) Subject: Ensure that "notmuch reply" succeeds during testing. X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=23a4d09773ebdb8b3b5d45b6fa5196190228f52d;p=notmuch.git Ensure that "notmuch reply" succeeds during testing. In some (bad!) cases, "notmuch reply" might fail, or might even segfault. If this happens, it indicates a bug, and the test suite should notice it. --- diff --git a/test/T220-reply.sh b/test/T220-reply.sh index 17741e0d..c29a900f 100755 --- a/test/T220-reply.sh +++ b/test/T220-reply.sh @@ -9,7 +9,7 @@ add_message '[from]="Sender "' \ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \ '[body]="basic reply test"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: notmuch-reply-test To: Sender @@ -17,7 +17,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> basic reply test" +> basic reply test +OK" test_begin_subtest "Multiple recipients" add_message '[from]="Sender "' \ @@ -26,7 +27,7 @@ add_message '[from]="Sender "' \ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \ '[body]="Multiple recipients"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: notmuch-reply-test To: Sender , Someone Else @@ -34,7 +35,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> Multiple recipients" +> Multiple recipients +OK" test_begin_subtest "Reply with CC" add_message '[from]="Sender "' \ @@ -44,7 +46,7 @@ add_message '[from]="Sender "' \ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \ '[body]="reply with CC"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: notmuch-reply-test To: Sender @@ -53,7 +55,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> reply with CC" +> reply with CC +OK" test_begin_subtest "Reply from alternate address" add_message '[from]="Sender "' \ @@ -62,7 +65,7 @@ add_message '[from]="Sender "' \ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \ '[body]="reply from alternate address"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: notmuch-reply-test To: Sender @@ -70,7 +73,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> reply from alternate address" +> reply from alternate address +OK" test_begin_subtest "Reply from address in named group list" add_message '[from]="Sender "' \ @@ -80,7 +84,7 @@ add_message '[from]="Sender "' \ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \ '[body]="Reply from address in named group list"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: notmuch-reply-test To: Sender , someone@example.com @@ -88,7 +92,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> Reply from address in named group list" +> Reply from address in named group list +OK" test_begin_subtest "Support for Reply-To" add_message '[from]="Sender "' \ @@ -98,7 +103,7 @@ add_message '[from]="Sender "' \ '[body]="support for reply-to"' \ '[reply-to]="Sender "' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: notmuch-reply-test To: Sender @@ -106,7 +111,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> support for reply-to" +> support for reply-to +OK" test_begin_subtest "Un-munging Reply-To" add_message '[from]="Sender "' \ @@ -116,7 +122,7 @@ add_message '[from]="Sender "' \ '[body]="Un-munging Reply-To"' \ '[reply-to]="Evil Munging List "' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: notmuch-reply-test To: Sender , Some List @@ -124,13 +130,14 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> Un-munging Reply-To" +> Un-munging Reply-To +OK" test_begin_subtest "Message with header of exactly 200 bytes" add_message '[subject]="This subject is exactly 200 bytes in length. Other than its length there is not much of note here. Note that the length of 200 bytes includes the Subject: and Re: prefixes with two spaces"' \ '[date]="Tue, 05 Jan 2010 15:43:56 -0000"' \ '[body]="200-byte header"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: This subject is exactly 200 bytes in length. Other than its length there is not much of note here. Note that the length of 200 bytes @@ -139,7 +146,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Notmuch Test Suite wrote: -> 200-byte header" +> 200-byte header +OK" test_begin_subtest "From guessing: Envelope-To" add_message '[from]="Sender "' \ @@ -149,7 +157,7 @@ add_message '[from]="Sender "' \ '[body]="From guessing"' \ '[header]="Envelope-To: test_suite_other@notmuchmail.org"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: From guessing To: Sender , Recipient @@ -157,7 +165,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> From guessing" +> From guessing +OK" test_begin_subtest "From guessing: X-Original-To" add_message '[from]="Sender "' \ @@ -167,7 +176,7 @@ add_message '[from]="Sender "' \ '[body]="From guessing"' \ '[header]="X-Original-To: test_suite@otherdomain.org"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: From guessing To: Sender , Recipient @@ -175,7 +184,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> From guessing" +> From guessing +OK" test_begin_subtest "From guessing: Delivered-To" add_message '[from]="Sender "' \ @@ -185,7 +195,7 @@ add_message '[from]="Sender "' \ '[body]="From guessing"' \ '[header]="Delivered-To: test_suite_other@notmuchmail.org"' -output=$(notmuch reply id:${gen_msg_id}) +output=$(notmuch reply id:${gen_msg_id} 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: From guessing To: Sender , Recipient @@ -193,7 +203,8 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, Sender wrote: -> From guessing" +> From guessing +OK" test_begin_subtest "Reply with RFC 2047-encoded headers" add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \ @@ -204,7 +215,7 @@ add_message '[subject]="=?iso-8859-1?q?=e0=df=e7?="' \ # GMime happens to change from Q- to B-encoding. We canonicalize the # case of the encoding and charset because different versions of GMime # capitalize the encoding differently. -output=$(notmuch reply id:${gen_msg_id} | perl -pe 's/=\?[^?]+\?[bB]\?/lc($&)/ge') +output=$( (notmuch reply id:${gen_msg_id} 2>&1 && echo OK) | perl -pe 's/=\?[^?]+\?[bB]\?/lc($&)/ge') test_expect_equal "$output" "\ From: Notmuch Test Suite Subject: Re: =?iso-8859-1?b?4N/n?= @@ -213,12 +224,13 @@ In-Reply-To: <${gen_msg_id}> References: <${gen_msg_id}> On Tue, 05 Jan 2010 15:43:56 -0000, ☃ wrote: -> Encoding" +> Encoding +OK" test_begin_subtest "Reply with RFC 2047-encoded headers (JSON)" -output=$(notmuch reply --format=json id:${gen_msg_id}) +output=$(echo '{"answer":' && notmuch reply --format=json id:${gen_msg_id} 2>&1 && echo ', "success": "OK"}') test_expect_equal_json "$output" ' -{ +{ "answer": { "original": { "body": [ { @@ -251,11 +263,13 @@ test_expect_equal_json "$output" ' "Subject": "Re: \u00e0\u00df\u00e7", "To": "\u2603 " } + }, + "success": "OK" }' test_begin_subtest "Reply to a message with multiple Cc headers" add_email_corpus broken -output=$(notmuch reply id:multiple-cc@example.org) +output=$(notmuch reply id:multiple-cc@example.org 2>&1 && echo OK) test_expect_equal "$output" "From: Notmuch Test Suite Subject: Re: wowsers! To: Alice , Daniel @@ -264,6 +278,7 @@ In-Reply-To: References: On Thu, 16 Jun 2016 22:14:41 -0400, Alice wrote: -> Note the Cc: and cc: headers." +> Note the Cc: and cc: headers. +OK" test_done