diff --git a/tests/test_mails.py b/tests/test_mails.py index 047116d3..b6e70f9c 100644 --- a/tests/test_mails.py +++ b/tests/test_mails.py @@ -1,3 +1,4 @@ +import smtplib import warnings from unittest import mock @@ -17,6 +18,21 @@ def test_send_test_email(testclient, logged_admin, smtpd): assert len(smtpd.messages) == 1 +@mock.patch("smtplib.SMTP") +def test_send_test_email_recipient_refused(SMTP, testclient, logged_admin, smtpd): + SMTP.side_effect = mock.Mock( + side_effect=smtplib.SMTPRecipientsRefused("test@test.com") + ) + assert len(smtpd.messages) == 0 + + res = testclient.get("/admin/mail") + res.form["mail"] = "test@test.com" + res = res.form.submit() + assert "The test invitation mail has been sent correctly" in res.text + + assert len(smtpd.messages) == 0 + + @mock.patch("smtplib.SMTP") def test_send_test_email_failed(SMTP, testclient, logged_admin): SMTP.side_effect = mock.Mock(side_effect=OSError("unit test mail error"))