test: add test for checking forwarded messages

Add test of forwarding messages from within emacs.
The first test checks that a references header is properly
added to the new message.  The second test checks that the
send-hook of the forwarding message adds a forwarded-tag
to the original message.
This commit is contained in:
Örjan Ekeberg 2019-04-12 14:01:13 +02:00 committed by David Bremner
parent 606f2a6615
commit bfe0f8dcc4

41
test/T730-emacs-forwarding.sh Executable file
View file

@ -0,0 +1,41 @@
#!/usr/bin/env bash
test_description="emacs forwarding"
. $(dirname "$0")/test-lib.sh || exit 1
test_begin_subtest "Forward setting the correct references header"
# Check that, when forwarding a message, the new message has
# a References-header pointing to the original (forwarded) message.
message_id='OriginalMessage@notmuchmail.org'
add_message \
[id]="$message_id" \
'[from]="user@example.com"' \
'[subject]="This is the original message"' \
'[body]="Dummy text."'
test_emacs_expect_t "
(let ((message-send-mail-function (lambda () t)))
(notmuch-show \"id:$message_id\")
(notmuch-show-forward-message)
(save-restriction
(message-narrow-to-headers)
(message-remove-header \"Fcc\")
(message-remove-header \"To\")
(message-add-header \"To: nobody@example.com\"))
(notmuch-mua-send)
(notmuch-test-expect-equal
(message-field-value \"References\") \"<$message_id>\"))
"
test_begin_subtest "Forwarding adding the forwarded tag"
# Check that sending the forwarding message in the previous
# subtest did add the forwarded-tag to the message that was forwarded.
test_expect_equal "$(notmuch search --output=tags id:$message_id | sort)" \
"forwarded
inbox
unread"
test_done