Beispiel #1
0
    def test_EmailMessage_attributes(self):
        """Test that send_at and categories attributes are correctly written through to output."""
        msg = EmailMessage(
            subject="Hello, World!",
            body="Hello, World!",
            from_email="Sam Smith <*****@*****.**>",
            to=["John Doe <*****@*****.**>", "*****@*****.**"],
        )

        # Set new attributes as message property
        msg.send_at = 1518108670
        if SENDGRID_VERSION < '6':
            msg.categories = ['mammal', 'dog']
        else:
            msg.categories = ['dog', 'mammal']

        msg.ip_pool_name = 'some-name'

        result = self.backend._build_sg_mail(msg)
        expected = {
            "personalizations": [{
                "to": [{
                    "email": "*****@*****.**",
                    "name": "John Doe"
                }, {
                    "email": "*****@*****.**",
                }],
                "subject":
                "Hello, World!",
                "send_at":
                1518108670,
            }],
            "from": {
                "email": "*****@*****.**",
                "name": "Sam Smith"
            },
            "mail_settings": {
                "sandbox_mode": {
                    "enable": False
                }
            },
            "subject":
            "Hello, World!",
            "tracking_settings": {
                "open_tracking": {
                    "enable": True
                }
            },
            "content": [{
                "type": "text/plain",
                "value": "Hello, World!"
            }],
            "categories": ['mammal', 'dog'],
            "ip_pool_name":
            "some-name"
        }

        self.assertDictEqual(result, expected)
    def test_EmailMessage_attributes(self):
        """Test that send_at and categories attributes are correctly written through to output."""
        msg = EmailMessage(
            subject="Hello, World!",
            body="Hello, World!",
            from_email="Sam Smith <*****@*****.**>",
            to=["John Doe <*****@*****.**>", "*****@*****.**"],
        )

        # Set new attributes as message property
        msg.send_at = 1518108670
        msg.categories = ['mammal', 'dog']
        msg.ip_pool_name = 'some-name'

        result = self.backend._build_sg_mail(msg)
        expected = {
            "personalizations": [{
                "to": [{
                    "email": "*****@*****.**",
                    "name": "John Doe"
                }, {
                    "email": "*****@*****.**",
                }],
                "subject": "Hello, World!",
                "send_at": 1518108670,
            }],
            "from": {
                "email": "*****@*****.**",
                "name": "Sam Smith"
            },
            "mail_settings": {
                "sandbox_mode": {
                    "enable": False
                }
            },
            "subject": "Hello, World!",
            "tracking_settings": {"open_tracking": {"enable": True}},
            "content": [{
                "type": "text/plain",
                "value": "Hello, World!"
            }],
            "categories": ['mammal', 'dog'],
            "ip_pool_name": "some-name"
        }

        self.assertDictEqual(result, expected)