mirror of
				https://github.com/django/django.git
				synced 2025-10-31 01:25:32 +00:00 
			
		
		
		
	Fixed #23910 -- Added reply_to parameter to EmailMessage
Thanks to Berker Peksag and Tim Graham for the review and suggestions.
This commit is contained in:
		| @@ -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 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user