|
| 1 | +import datetime |
1 | 2 | from django.test import TestCase |
| 3 | +from mailer.event_report_mailer import send_event_report_email |
| 4 | + |
| 5 | +from api.models.events import Event |
| 6 | +from django.contrib.auth.models import User |
| 7 | +from api.models import UserProfile |
| 8 | + |
| 9 | +from django.core import mail |
2 | 10 |
|
3 | 11 | # Create your tests here. |
| 12 | + |
| 13 | +class EmailTestCase(TestCase): |
| 14 | + def setUp(self): |
| 15 | + self. u1 = User. objects. create( username='user1', email='[email protected]', first_name='Nejc') |
| 16 | + self.up1 = UserProfile.objects.create(user=self.u1) |
| 17 | + |
| 18 | + self.event = Event.objects.create( |
| 19 | + organizer="Organizer 1", |
| 20 | + creator=User.objects.filter(pk=1)[0], |
| 21 | + title="Event 1 - Pending", |
| 22 | + description="Some description - Pending", |
| 23 | + location="Near here", |
| 24 | + start_date=datetime.datetime.now() + datetime.timedelta(days=1, hours=3), |
| 25 | + end_date=datetime.datetime.now() + datetime.timedelta(days=3, hours=3), |
| 26 | + event_url="http://eee.com", |
| 27 | + contact_person="[email protected]", |
| 28 | + country="SI", |
| 29 | + pub_date=datetime.datetime.now(), |
| 30 | + tags=["tag1", "tag2"]) |
| 31 | + |
| 32 | + |
| 33 | + def test_send_event_email(self): |
| 34 | + send_event_report_email(self.u1, self.event) |
| 35 | + email = mail.outbox[0] |
| 36 | + |
| 37 | + self.assertEquals('New event needs your attention', email.subject) |
| 38 | + self. assertEquals( '[email protected]', email. from_email) |
| 39 | + self.assertEquals([self.u1.email], email.to) |
| 40 | + self.assertIn(self.u1.first_name, email.body) |
| 41 | + self.assertIn(self.event.title, email.body) |
0 commit comments