def test_multi_backend_sent_count(self):
        test_backends = {
            'mailjet': {
                'backend':
                'django_email_multibackend.tests.FakeSendingBackend',
            },
            'mailjet2': {
                'backend':
                'django_email_multibackend.tests.FakeSendingBackend',
            },
        }

        test_weights = (
            ('mailjet', 1),
            ('mailjet2', 1),
        )
        instance = EmailMultiServerBackend(backends=test_backends,
                                           backend_weights=test_weights)
        messages = [
            EmailMessage(),
            EmailMessage(),
            EmailMessage(),
            EmailMessage()
        ]
        self.assertEquals(4, instance.send_messages(messages))
    def test_connection_error_count(self):
        test_backends = {
            'mailjet': {
                'backend': 'django_email_multibackend.tests.NoConnectionBackend',
                },
            }

        test_weights = (
            ('mailjet', 1),
        )
        instance = EmailMultiServerBackend(backends=test_backends, backend_weights=test_weights)
        messages = [EmailMessage(), EmailMessage()]
        self.assertEquals(0, instance.send_messages(messages))
Example #3
0
    def test_connection_error_count(self):
        test_backends = {
            'mailjet': {
                'backend':
                'django_email_multibackend.tests.NoConnectionBackend',
            },
        }

        test_weights = (('mailjet', 1), )
        instance = EmailMultiServerBackend(backends=test_backends,
                                           backend_weights=test_weights)
        messages = [EmailMessage(), EmailMessage()]
        self.assertEquals(0, instance.send_messages(messages))
    def test_sent_count(self):
        test_backends = {
            'mailjet': {
                'backend': 'django_email_multibackend.tests.FakeSendingBackend',
                },
            }

        test_weights = (
            ('mailjet', 1),
        )
        instance = EmailMultiServerBackend(backends=test_backends, backend_weights=test_weights)
        messages = [EmailMessage(), EmailMessage()]
        self.assertEquals(2, instance.send_messages(messages))
Example #5
0
 def test_backend_classes(self):
     instance = EmailMultiServerBackend()
     for backend_name, backend in instance.servers.items():
         assert isinstance(
             backend,
             (FakeTransactionalMailBackend, FakeCampaignMailBackend))
Example #6
0
 def test_send_messages(self):
     mails = [transactional_email, campaign_email]
     instance = EmailMultiServerBackend()
     self.assertRaises(SendMailException, instance.send_messages, mails)
Example #7
0
 def test_send_message(self):
     instance = EmailMultiServerBackend()
     self.assertRaises(SendMailException, instance.send_messages,
                       transactional_email)
Example #8
0
 def test_get_backend(self):
     instance = EmailMultiServerBackend()
     for i in range(10):
         assert instance.get_backend(
             campaign_email) in instance.servers.values()
Example #9
0
 def test_weights(self):
     instance = EmailMultiServerBackend()
     assert (instance.weights == settings.EMAIL_BACKENDS_WEIGHTS)
Example #10
0
 def test_default_weights(self):
     instance = EmailMultiServerBackend()
     backends = dict.fromkeys(['b1', 'b2'])
     weights = instance.backends_weights(None, backends)
     self.assertListEqual(list(zip(*weights)[0]), backends.keys())
Example #11
0
 def test_init(self):
     EmailMultiServerBackend()
Example #12
0
 def test_filtered_backends(self):
     instance = EmailMultiServerBackend()
     transactional_backends = instance.get_backends_for_email(
         campaign_email)
     assert transactional_backends == [('mailchimp', 3)]
Example #13
0
 def test_match_all_backends(self):
     instance = EmailMultiServerBackend()
     transactional_backends = instance.get_backends_for_email(
         transactional_email)
     assert transactional_backends == list(instance.weights)
 def test_default_weights(self):
     instance = EmailMultiServerBackend()
     backends = dict.fromkeys(['b1', 'b2'])
     weights = instance.backends_weights(None, backends)
     self.assertEqual(set([('b1', 1), ('b2', 1)]), set(weights))
 def test_filtered_backends(self):
     instance = EmailMultiServerBackend()
     transactional_backends = instance.get_backends_for_email(campaign_email)
     assert transactional_backends == [('mailchimp', 3)]
 def test_match_all_backends(self):
     instance = EmailMultiServerBackend()
     transactional_backends = instance.get_backends_for_email(transactional_email)
     assert transactional_backends == list(instance.weights)
 def test_get_backend(self):
     instance = EmailMultiServerBackend()
     for i in range(10):
         assert instance.get_backend(campaign_email) in instance.servers.values()
 def test_default_weights(self):
     instance = EmailMultiServerBackend()
     backends = dict.fromkeys(['b1', 'b2'])
     weights = instance.backends_weights(None, backends)
     self.assertListEqual(list(zip(*weights)[0]), backends.keys())
 def test_default_weights(self):
     instance = EmailMultiServerBackend()
     backends = dict.fromkeys(['b1', 'b2'])
     weights = instance.backends_weights(None, backends)
     self.assertEqual(set([('b1', 1), ('b2', 1)]), set(weights))