def test_generate_confirmational_email_for_student_that_already_received_email(self): """ Students that already received confirmational email should not receive another one """ self.student2.has_received_email = True self.student2.save() template = self.email_confirmation_template.name confirm_interview_url = "confirm-interview-test-url" choose_interview_url = "choose-interview-test-url" confirm_email_generator = GenerateConfirmEmails( template, confirm_interview_url, choose_interview_url) confirm_email_generator.generate_confirmation_emails() client = Client() client.login( email=self.teacher_admin.email, password='******' ) url = reverse('admin:post_office_email_changelist') response = client.get(url, follow=True) result_list = response.context_data['cl'].result_list # Two students dont have interviews and the third already received email # There should be no emails generated in Email change list self.assertEqual(len(result_list), 0)
def test_generate_confirmational_email_for_student_without_interview(self): """ Students without interview date should not receive email """ template = self.email_confirmation_template.name confirm_interview_url = "confirm-interview-test-url" choose_interview_url = "choose-interview-test-url" confirm_email_generator = GenerateConfirmEmails( template, confirm_interview_url, choose_interview_url) confirm_email_generator.generate_confirmation_emails() client = Client() client.login( email=self.teacher_admin.email, password='******' ) url = reverse('admin:post_office_email_changelist') response = client.get(url, follow=True) result_list = response.context_data['cl'].result_list # All three students dont have interviews # There should be no emails generated in Email change list self.assertEqual(len(result_list), 0)
def test_generate_confirmational_email_for_student_with_interview(self): """ Students without interview date should not receive email Students that already received confirmational email should not receive another one """ self.interview_slot1.student = self.student1 self.interview_slot1.save() self.student1.has_interview_date = True self.student1.save() template = self.email_confirmation_template.name confirm_interview_url = "confirm-interview-test-url" choose_interview_url = "choose-interview-test-url" confirm_email_generator = GenerateConfirmEmails( template, confirm_interview_url, choose_interview_url) confirm_email_generator.generate_confirmation_emails() client = Client() client.login( email=self.teacher_admin.email, password='******' ) url = reverse('admin:post_office_email_changelist') response = client.get(url, follow=True) result_list = response.context_data['cl'].result_list # Only email for self.student1 should be in Email change list self.assertEqual(len(result_list), 1) self.assertEqual(result_list[0].to[0], self.student1.email)
def test_generate_confirmational_email_for_student_that_already_received_email( self): """ Students that already received confirmational email should not receive another one """ self.student2.has_received_email = True self.student2.save() template = self.email_confirmation_template.name confirm_interview_url = "confirm-interview-test-url" choose_interview_url = "choose-interview-test-url" confirm_email_generator = GenerateConfirmEmails( template, confirm_interview_url, choose_interview_url) confirm_email_generator.generate_confirmation_emails() client = Client() client.login(email=self.teacher_admin.email, password='******') url = reverse('admin:post_office_email_changelist') response = client.get(url, follow=True) result_list = response.context_data['cl'].result_list # Two students dont have interviews and the third already received email # There should be no emails generated in Email change list self.assertEqual(len(result_list), 0)
def test_generate_confirmational_email_for_student_with_interview(self): """ Students without interview date should not receive email Students that already received confirmational email should not receive another one """ self.interview_slot1.student = self.student1 self.interview_slot1.save() self.student1.has_interview_date = True self.student1.save() template = self.email_confirmation_template.name confirm_interview_url = "confirm-interview-test-url" choose_interview_url = "choose-interview-test-url" confirm_email_generator = GenerateConfirmEmails( template, confirm_interview_url, choose_interview_url) confirm_email_generator.generate_confirmation_emails() client = Client() client.login(email=self.teacher_admin.email, password='******') url = reverse('admin:post_office_email_changelist') response = client.get(url, follow=True) result_list = response.context_data['cl'].result_list # Only email for self.student1 should be in Email change list self.assertEqual(len(result_list), 1) self.assertEqual(result_list[0].to[0], self.student1.email)
def test_generate_confirmational_email_for_student_without_interview(self): """ Students without interview date should not receive email """ template = self.email_confirmation_template.name confirm_interview_url = "confirm-interview-test-url" choose_interview_url = "choose-interview-test-url" confirm_email_generator = GenerateConfirmEmails( template, confirm_interview_url, choose_interview_url) confirm_email_generator.generate_confirmation_emails() client = Client() client.login(email=self.teacher_admin.email, password='******') url = reverse('admin:post_office_email_changelist') response = client.get(url, follow=True) result_list = response.context_data['cl'].result_list # All three students dont have interviews # There should be no emails generated in Email change list self.assertEqual(len(result_list), 0)