Пример #1
0
 def test_send_email_and_fail(self, requests_post):
     backend = MailgunBackend()
     backend.open()
     email_message = EmailMultiAlternatives('subject', 'body', 'from_email',
                                            ['to_email'])
     email_message.attach_alternative('html_body', 'text/html')
     with self.assertRaises(MailgunAPIError):
         backend.send_messages([email_message])
     backend.close()
Пример #2
0
 def test_send_no_emails(self, requests_post):
     backend = MailgunBackend()
     backend.open()
     count = backend.send_messages([])
     self.assertEqual(count, None)
     backend.close()
     requests_post.assert_not_called()
Пример #3
0
 def test_send_no_recipients(self, requests_post):
     backend = MailgunBackend()
     backend.open()
     email_message = EmailMultiAlternatives('subject', 'body', 'from_email',
                                            [])
     email_message.attach_alternative('html_body', 'text/html')
     count = backend.send_messages([email_message])
     backend.close()
     self.assertEqual(count, 0)
Пример #4
0
    def test_send_attachment(self, requests_post):
        backend = MailgunBackend()
        backend.open()
        email_message = EmailMultiAlternatives('subject', 'body', 'from_email',
                                               ['to_email'])
        email_message.attach_alternative('html_body', 'text/html')
        email_message.attach('test.txt', '<test></test>', 'text/html')
        count = backend.send_messages([email_message])
        backend.close()

        self.assertEqual(count, 1)
Пример #5
0
    def test_send_email_and_fail_silently(self, requests_post):
        backend = MailgunBackend(fail_silently=True)
        backend.open()
        email_message = EmailMultiAlternatives('subject', 'body', 'from_email',
                                               ['to_email'])
        email_message.attach_alternative('html_body', 'text/html')
        count = backend.send_messages([email_message])
        backend.close()

        self.assertEqual(count, 0)
        self.assertEqual(requests_post.call_args, mock.call(
            u'https://api.mailgun.net/v3/server/messages',
            auth=(u'api', 'key'),
            data=[(u'to', u'to_email'), (u'text', 'body'),
                  (u'subject', 'subject'), (u'from', u'from_email'),
                  (u'html', 'html_body')],
            headers=None))