X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2Fnotmuch-test;h=33218d24483688756abd800393376412b4586f18;hp=961c8fd7b9a2541aa3419684b4760e6e1d93f7ac;hb=9041c1389cfddb79bf4cc268f5cd94d4af41c27a;hpb=5a4532860caf2120e8af27794c6bdcd1eea7b474 diff --git a/test/notmuch-test b/test/notmuch-test index 961c8fd7..33218d24 100755 --- a/test/notmuch-test +++ b/test/notmuch-test @@ -32,8 +32,9 @@ increment_mtime () # Generate a new message in the mail directory, with # a unique message ID and subject. # -# The filename of the message generated is available as -# $gen_msg_filename +# After this function returns, the filename of the generated message +# is available as $gen_msg_filename and the message ID is available as +# $gen_msg_id . # # This function supports named parameters with the bash syntax for # assigning a value to an associative array ([name]=value). The @@ -51,11 +52,13 @@ increment_mtime () # '[from]="Some User "' # '[to]="Some User "' # '[subject]="Subject of email message"' +# '[date]="RFC 822 Date"' # # Values for email headers. If not provided, default values will # be generated instead. # # '[cc]="Some User "' +# [reply-to]=some-address # [in-reply-to]= # # Additional values for email headers. If these are not provided @@ -63,6 +66,7 @@ increment_mtime () # message. gen_msg_cnt=0 gen_msg_filename="" +gen_msg_id="" generate_message () { # This is our (bash-specific) magic for doing named parameters @@ -71,6 +75,7 @@ generate_message () gen_msg_cnt=$((gen_msg_cnt + 1)) gen_msg_name=msg-$(printf "%03d" $gen_msg_cnt) + gen_msg_id="${gen_msg_name}@notmuch-test-suite" if [ -z "${template[dir]}" ]; then gen_msg_filename="${MAIL_DIR}/$gen_msg_name" @@ -95,9 +100,13 @@ generate_message () template[subject]="Test message ${gen_msg_filename}" fi + if [ -z "${template[date]}" ]; then + template[date]="Tue, 05 Jan 2010 15:43:57 -0800" + fi + additional_headers="" - if [ ! -z "${template[cc]}" ]; then - additional_headers="Cc: ${template[cc]} + if [ ! -z "${template[reply-to]}" ]; then + additional_headers="Reply-To: ${template[reply-to]} ${additional_headers}" fi @@ -106,16 +115,20 @@ ${additional_headers}" ${additional_headers}" fi + if [ ! -z "${template[cc]}" ]; then + additional_headers="Cc: ${template[cc]} +${additional_headers}" + fi + cat <$gen_msg_filename From: ${template[from]} To: ${template[to]} -Message-Id: +Message-Id: <${gen_msg_id}> Subject: ${template[subject]} -Date: Tue, 05 Jan 2010 15:43:57 -0800 +Date: ${template[date]} ${additional_headers} ${template[body]} EOF -} # Ensure that the mtime of the containing directory is updated increment_mtime $(dirname ${gen_msg_filename}) @@ -156,6 +169,7 @@ path=${MAIL_DIR} [user] name=Notmuch Test Suite primary_email=test_suite@notmuchmail.org +other_email=test_suite_other@notmuchmail.org EOF printf "Testing \"notmuch new\" in several variations:\n" @@ -286,6 +300,120 @@ increment_mtime ${MAIL_DIR} execute_expecting new "No new mail. Removed 3 messages." +printf "\nTesting \"notmuch reply\" in several variations:\n" + +printf " Basic reply...\t\t\t" +generate_message '[from]="Sender "' \ + [to]=test_suite@notmuchmail.org \ + [subject]=notmuch-reply-test \ + '[date]="Tue, 05 Jan 2010 15:43:56 -0800"' \ + '[body]="basic reply test"' + +$NOTMUCH new > /dev/null +execute_expecting "reply id:${gen_msg_id}" "From: Notmuch Test Suite +Subject: Re: notmuch-reply-test +To: Sender +Bcc: test_suite@notmuchmail.org +In-Reply-To: <${gen_msg_id}> +References: <${gen_msg_id}> + +On Tue, 05 Jan 2010 15:43:56 -0800, Sender wrote: +> basic reply test" + +printf " Multiple recipients...\t\t" +generate_message '[from]="Sender "' \ + '[to]="test_suite@notmuchmail.org, Someone Else "' \ + [subject]=notmuch-reply-test \ + '[date]="Tue, 05 Jan 2010 15:43:56 -0800"' \ + '[body]="Multiple recipients"' + +$NOTMUCH new > /dev/null +execute_expecting "reply id:${gen_msg_id}" "From: Notmuch Test Suite +Subject: Re: notmuch-reply-test +To: Sender , Someone Else +Bcc: test_suite@notmuchmail.org +In-Reply-To: <${gen_msg_id}> +References: <${gen_msg_id}> + +On Tue, 05 Jan 2010 15:43:56 -0800, Sender wrote: +> Multiple recipients" + +printf " Reply with CC...\t\t" +generate_message '[from]="Sender "' \ + [to]=test_suite@notmuchmail.org \ + '[cc]="Other Parties "' \ + [subject]=notmuch-reply-test \ + '[date]="Tue, 05 Jan 2010 15:43:56 -0800"' \ + '[body]="reply with CC"' + +$NOTMUCH new > /dev/null +execute_expecting "reply id:${gen_msg_id}" "From: Notmuch Test Suite +Subject: Re: notmuch-reply-test +To: Sender +Cc: Other Parties +Bcc: test_suite@notmuchmail.org +In-Reply-To: <${gen_msg_id}> +References: <${gen_msg_id}> + +On Tue, 05 Jan 2010 15:43:56 -0800, Sender wrote: +> reply with CC" + +printf " Reply from alternate address..." +generate_message '[from]="Sender "' \ + [to]=test_suite_other@notmuchmail.org \ + [subject]=notmuch-reply-test \ + '[date]="Tue, 05 Jan 2010 15:43:56 -0800"' \ + '[body]="reply from alternate address"' + +$NOTMUCH new > /dev/null +execute_expecting "reply id:${gen_msg_id}" "From: Notmuch Test Suite +Subject: Re: notmuch-reply-test +To: Sender +Bcc: test_suite@notmuchmail.org +In-Reply-To: <${gen_msg_id}> +References: <${gen_msg_id}> + +On Tue, 05 Jan 2010 15:43:56 -0800, Sender wrote: +> reply from alternate address" + +printf " Support for Reply-To...\t" +generate_message '[from]="Sender "' \ + [to]=test_suite@notmuchmail.org \ + [subject]=notmuch-reply-test \ + '[date]="Tue, 05 Jan 2010 15:43:56 -0800"' \ + '[body]="support for reply-to"' \ + '[reply-to]="Sender "' + +$NOTMUCH new > /dev/null +execute_expecting "reply id:${gen_msg_id}" "From: Notmuch Test Suite +Subject: Re: notmuch-reply-test +To: Sender +Bcc: test_suite@notmuchmail.org +In-Reply-To: <${gen_msg_id}> +References: <${gen_msg_id}> + +On Tue, 05 Jan 2010 15:43:56 -0800, Sender wrote: +> support for reply-to" + +printf " Un-munging Reply-To...\t\t" +generate_message '[from]="Sender "' \ + '[to]="Some List "' \ + [subject]=notmuch-reply-test \ + '[date]="Tue, 05 Jan 2010 15:43:56 -0800"' \ + '[body]="Un-munging Reply-To"' \ + '[reply-to]="Evil Munging List "' + +$NOTMUCH new > /dev/null +execute_expecting "reply id:${gen_msg_id}" "From: Notmuch Test Suite +Subject: Re: notmuch-reply-test +To: Sender , Some List +Bcc: test_suite@notmuchmail.org +In-Reply-To: <${gen_msg_id}> +References: <${gen_msg_id}> + +On Tue, 05 Jan 2010 15:43:56 -0800, Sender wrote: +> Un-munging Reply-To" + cat <