def test_issue_summaries(self):
with mock.patch.object(Report, 'can_issue_daily', return_value=True):
result = issue_surveys.apply().get()
self.assertEqual(result, 1, 'task should generate at least one survey')
survey = Survey.objects.get()
survey.completed = now()
with mock.patch.object(Report, 'can_issue_summary', return_value=True):
issue_summaries.apply()
self.assertEquals(len(mail.outbox), 2, 'there should be two emails sent to user')
self.assertIsNotNone(Report.objects.get().dailyreport_set.get().summary_submitted)
message = mail.outbox[1]
self.assertIn('Boomerang summary report', message.subject, 'title contains positive message')
html_body = message.alternatives[0][0]
for question in self.report.question_set.active().values_list('text', flat=True):
self.assertIn(question, html_body, 'report contains questions')
self.assertIn('no answer', html_body, "and doesn't contain answers but contains this string at least once")
评论列表
文章目录