summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMartin Blech <martinblech@gmail.com>2014-11-25 20:05:44 -0300
committerTim Graham <timograham@gmail.com>2014-11-28 06:00:06 -0500
commite023ceb453c02e271d00f9ac25e154b7be712bb0 (patch)
treef884b6a0bc57c16ec6d3665f419a2043eda153b2 /tests
parent6b5d82749c57a1aae8c9e81d2b85b2cadb9ef933 (diff)
Fixed #23910 -- Added reply_to parameter to EmailMessage
Thanks to Berker Peksag and Tim Graham for the review and suggestions.
Diffstat (limited to 'tests')
-rw-r--r--tests/mail/tests.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/mail/tests.py b/tests/mail/tests.py
index a34a862622..e4b568939c 100644
--- a/tests/mail/tests.py
+++ b/tests/mail/tests.py
@@ -89,6 +89,21 @@ class MailTests(HeadersCheckMixin, SimpleTestCase):
self.assertEqual(message['Cc'], 'cc@example.com, cc.other@example.com')
self.assertEqual(email.recipients(), ['to@example.com', 'other@example.com', 'cc@example.com', 'cc.other@example.com', 'bcc@example.com'])
+ def test_reply_to(self):
+ email = EmailMessage(
+ 'Subject', 'Content', 'from@example.com', ['to@example.com'],
+ reply_to=['reply_to@example.com'],
+ )
+ message = email.message()
+ self.assertEqual(message['Reply-To'], 'reply_to@example.com')
+
+ email = EmailMessage(
+ 'Subject', 'Content', 'from@example.com', ['to@example.com'],
+ reply_to=['reply_to1@example.com', 'reply_to2@example.com']
+ )
+ message = email.message()
+ self.assertEqual(message['Reply-To'], 'reply_to1@example.com, reply_to2@example.com')
+
def test_recipients_as_tuple(self):
email = EmailMessage('Subject', 'Content', 'from@example.com', ('to@example.com', 'other@example.com'), cc=('cc@example.com', 'cc.other@example.com'), bcc=('bcc@example.com',))
message = email.message()
@@ -102,6 +117,8 @@ class MailTests(HeadersCheckMixin, SimpleTestCase):
EmailMessage(cc='foo@example.com')
with self.assertRaisesMessage(TypeError, '"bcc" argument must be a list or tuple'):
EmailMessage(bcc='foo@example.com')
+ with self.assertRaisesMessage(TypeError, '"reply_to" argument must be a list or tuple'):
+ EmailMessage(reply_to='reply_to@example.com')
def test_header_injection(self):
email = EmailMessage('Subject\nInjection Test', 'Content', 'from@example.com', ['to@example.com'])
@@ -163,6 +180,17 @@ class MailTests(HeadersCheckMixin, SimpleTestCase):
self.assertEqual(message['To'], 'list-subscriber@example.com, list-subscriber2@example.com')
self.assertEqual(email.to, ['list-subscriber@example.com', 'list-subscriber2@example.com'])
+ def test_reply_to_header(self):
+ """
+ Specifying 'Reply-To' in headers should override reply_to.
+ """
+ email = EmailMessage(
+ 'Subject', 'Content', 'bounce@example.com', ['to@example.com'],
+ reply_to=['foo@example.com'], headers={'Reply-To': 'override@example.com'},
+ )
+ message = email.message()
+ self.assertEqual(message['Reply-To'], 'override@example.com')
+
def test_multiple_message_call(self):
"""
Regression for #13259 - Make sure that headers are not changed when