X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=test%2Femacs;h=dd3acc0ecdd1962f989b9a91d3b1753d1c9a97a0;hb=a3883a7e17171381b8b495ce6efd931c8f420c90;hp=38effd0e8f7c367babd7230d5e77e2a2f170b16d;hpb=4606ea60a76c11a97e913f87b97d76e64b4bcf0c;p=notmuch diff --git a/test/emacs b/test/emacs index 38effd0e..dd3acc0e 100755 --- a/test/emacs +++ b/test/emacs @@ -56,4 +56,39 @@ test_emacs '(notmuch-search "id:\"123..456@example\"") (notmuch-test-wait) (notm output=$(notmuch search 'id:"123..456@example"' | notmuch_search_sanitize) test_expect_equal "$output" "thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; Message with .. in Message-Id (inbox search-add show-add)" +test_begin_subtest "Sending a message via (fake) SMTP" + +# Before we can send a message, we have to prepare the FCC maildir +mkdir -p mail/sent/cur +mkdir -p mail/sent/new +mkdir -p mail/sent/tmp + +../smtp-dummy sent_message & +smtp_dummy_pid=$! +test_emacs "(setq message-send-mail-function 'message-smtpmail-send-it) (setq smtpmail-smtp-server \"localhost\") (setq smtpmail-smtp-service \"25025\") (notmuch-hello) (notmuch-mua-mail) (message-goto-to) (insert \"user@example.com\") (message-goto-subject) (insert \"Testing message sent via SMTP\") (message-goto-body) (insert \"This is a test that messages are sent via SMTP\") (message-send-and-exit)" >/dev/null 2>&1 +wait ${smtp_dummy_pid} + +# XXX: Masking away the User-Agent, Date, and Message-ID makes sense, +# since these fields are inherently unpredictable. But doing the same +# thing with the From address is cheating. What should really be +# happening here is that the emacs interface should be using something +# like "notmuch compose" to construct the initial message and it +# should be getting the user's name and email address from the notmuch +# configuration file. + +output=$(sed -e 's,^From: .*,From: XXX,' \ + -e s',^User-Agent: Notmuch/.* Emacs/.*,User-Agent: Notmuch/XXX Emacs/XXX,' \ + -e s',^Date:.*,Date: XXX,' \ + -e s',^Message-ID: <.*>$,Message-ID: ,' < sent_message) +test_expect_equal "$output" "From: XXX +To: user@example.com +Subject: Testing message sent via SMTP +User-Agent: Notmuch/XXX Emacs/XXX +Date: XXX +Message-ID: +MIME-Version: 1.0 +Content-Type: text/plain; charset=us-ascii + +This is a test that messages are sent via SMTP" + test_done