Login

Testing email sending

Author:
monikasulik
Posted:
February 19, 2015
Language:
Python
Version:
1.7
Tags:
email testing
Score:
0 (after 0 ratings)

How I assert email is being sent correctly

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
from django.test import TestCase
from django.core import mail


class TestSomething(TestCase):
    def test_something_in_something(self):
        # run whatever code that is supposed to send emails

        self.assertEqual(len(mail.outbox), 1)
        msg = mail.outbox[0]
        self.assertItemsEqual(msg.recipients(), ['[email protected]'])
        self.assertEqual(msg.subject, 'Subject')
        url = 'https://example.com%s' % reverse('url_name')
        self.assertIn(url, msg.body)  # verification urls, change password urls etc. when applicable
        self.assertIn('Specific text like comments on why something was accepted/rejected', msg.body)

More like this

Comments

Please login first before commenting.