Esempio n. 1
0
    def test_build_mail_object_regular(self):
        from_email = '*****@*****.**'
        reply_to_email = '*****@*****.**'
        email = '*****@*****.**'
        subject = 'Test email'
        my_var = 'Lorem ipsum dolor!'
        service = BaseEmailService(recipient_email_list=[email],
                                   context_data={'my_var': my_var})
        service.FROM_EMAIL = from_email
        service.REPLY_TO_ADDRESS = reply_to_email
        service.subject = subject
        service.template_name = 'test_email.html'
        msg_obj = service._build_mail_object()

        # Assertions
        self.assertIsInstance(msg_obj, EmailMultiAlternatives)

        self.assertEqual(msg_obj.subject, subject)

        self.assertEqual(msg_obj.from_email, from_email)
        self.assertEqual(msg_obj.to, [email])
        self.assertEqual(msg_obj.reply_to, [reply_to_email])

        self.assertIn('Friday', msg_obj.body)
        self.assertIn(my_var, msg_obj.body)

        self.assertIn('Friday', msg_obj.alternatives[0][0])
        self.assertIn(my_var, msg_obj.alternatives[0][0])
Esempio n. 2
0
    def test_setting_txt_templates_works(self):
        my_var = 'Lorem ipsum dolor!'
        service = BaseEmailService(
            recipient_email_list=['*****@*****.**'],
            context_data={'my_var': my_var})
        service.FROM_EMAIL = '*****@*****.**'
        service.subject = 'Test mail'
        service.template_name = 'test_email.html'
        service.template_txt_name = 'test_email.txt'
        msg_obj = service._build_mail_object()

        # Assertions
        self.assertIsInstance(msg_obj, EmailMultiAlternatives)

        self.assertIn('I am a different content', msg_obj.body)
        self.assertNotIn('I am a different content',
                         msg_obj.alternatives[0][0])

        self.assertIn(my_var, msg_obj.body)
Esempio n. 3
0
    def test_build_mail_object_with_attachments(self):
        from_email = '*****@*****.**'
        reply_to_email = '*****@*****.**'
        email = '*****@*****.**'
        subject = 'Test email'
        my_var = 'Lorem ipsum dolor!'
        file_path = settings.BASE_PATH / 'tests/files/testfile.txt'
        service = BaseEmailService(recipient_email_list=[email],
                                   context_data={'my_var': my_var},
                                   attachment_list=[file_path])
        service.FROM_EMAIL = from_email
        service.REPLY_TO_ADDRESS = reply_to_email
        service.subject = subject
        service.template_name = 'test_email.html'
        msg_obj = service._build_mail_object()

        # Assertions
        self.assertIsInstance(msg_obj, EmailMultiAlternatives)

        self.assertEqual(len(msg_obj.attachments), 1)
        self.assertEqual(msg_obj.attachments[0][0], basename(file_path))
Esempio n. 4
0
 def test_get_from_email_from_class(self):
     email = '*****@*****.**'
     service = BaseEmailService()
     service.FROM_EMAIL = email
     self.assertEqual(service.get_from_email(), email)