From 42dc9d04006c0bdecba6e0c8a29038b01d5a62d7 Mon Sep 17 00:00:00 2001 From: levental Date: Tue, 20 Sep 2016 19:34:01 +0200 Subject: Fixed #26210 -- Prevented SMTP backend from trying to send mail after a connection failure. --- tests/mail/tests.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'tests') diff --git a/tests/mail/tests.py b/tests/mail/tests.py index 93e2127d63..e518ca46d5 100644 --- a/tests/mail/tests.py +++ b/tests/mail/tests.py @@ -1448,6 +1448,19 @@ class SMTPBackendTests(BaseEmailBackendTests, SMTPBackendTestsBase): finally: SMTP.send = send + def test_send_messages_after_open_failed(self): + """ + send_messages() shouldn't try to send messages if open() raises an + exception after initializing the connection. + """ + backend = smtp.EmailBackend() + # Simulate connection initialization success and a subsequent + # connection exception. + backend.connection = True + backend.open = lambda: None + email = EmailMessage('Subject', 'Content', 'from@example.com', ['to@example.com']) + self.assertEqual(backend.send_messages([email]), None) + class SMTPBackendStoppedServerTest(SMTPBackendTestsBase): """ -- cgit v1.3