|
2 | 2 | import json
|
3 | 3 | import unittest
|
4 | 4 |
|
| 5 | +from email.message import EmailMessage |
| 6 | + |
5 | 7 | from sendgrid.helpers.mail import (
|
6 | 8 | ASM,
|
7 | 9 | APIKeyIncludedException,
|
@@ -557,3 +559,21 @@ def test_disable_tracking(self):
|
557 | 559 | def test_directly_setting_substitutions(self):
|
558 | 560 | personalization = Personalization()
|
559 | 561 | personalization.substitutions = [{'a': 0}]
|
| 562 | + |
| 563 | + def test_from_emailmessage(self): |
| 564 | + message = EmailMessage() |
| 565 | + message.set_content('message that is not urgent') |
| 566 | + message.set_default_type('text/plain') |
| 567 | + message['Subject'] = 'URGENT TITLE' |
| 568 | + message[ 'From'] = '[email protected]' |
| 569 | + message[ 'To'] = '[email protected]' |
| 570 | + mail = Mail.from_EmailMessage(message) |
| 571 | + self.assertEqual(mail.subject, 'URGENT TITLE') |
| 572 | + self. assertEqual( mail. from_email. email, '[email protected]') |
| 573 | + self.assertEqual(len(mail.personalizations), 1) |
| 574 | + self.assertEqual(len(mail.personalizations[0].tos), 1) |
| 575 | + self. assertDictEqual( mail. personalizations[ 0]. tos[ 0], { 'email': '[email protected]'}) |
| 576 | + self.assertEqual(len(mail.contents), 1) |
| 577 | + content = mail.contents[0] |
| 578 | + self.assertEqual(content.type, 'text/plain') |
| 579 | + self.assertEqual(content.value, 'message that is not urgent\n') |
0 commit comments