apps.lyric.views and .tests.test_views updated for better Mailgun API post mocking; UTs passing locally
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

This commit is contained in:
Disco DeDisco
2026-02-10 21:42:15 -05:00
parent fec1cfcb30
commit 5a633dccee
2 changed files with 12 additions and 11 deletions

View File

@@ -10,17 +10,17 @@ class SendLoginEmailViewTest(TestCase):
)
self.assertRedirects(response, "/")
@mock.patch("apps.lyric.views.send_mail")
def test_sends_mail_to_address_from_post(self, mock_send_mail):
@mock.patch("apps.lyric.views.requests.post")
def test_sends_mail_to_address_from_post(self, mock_post):
self.client.post(
"/apps/lyric/send_login_email", data={"email": "discoman@example.com"}
)
self.assertEqual(mock_send_mail.called, True)
(subject, body, from_email, to_list), kwargs = mock_send_mail.call_args
self.assertEqual(subject, "A magic login link to your Dashboard")
self.assertEqual(from_email, "adman@howdy.earthmanrpg.me")
self.assertEqual(to_list, ["discoman@example.com"])
self.assertEqual(mock_post.called, True)
data = mock_post.call_args.kwargs["data"]
self.assertEqual(data["subject"], "A magic login link to your Dashboard")
self.assertEqual(data["from"], "adman@howdy.earthmanrpg.me")
self.assertEqual(data["to"], "discoman@example.com")
def test_adds_success_message(self):
response = self.client.post(
@@ -44,16 +44,16 @@ class SendLoginEmailViewTest(TestCase):
self.assertEqual(token.email, "discoman@example.com")
@mock.patch("apps.lyric.views.send_mail")
def test_sends_link_to_login_using_token_uid(self, mock_send_mail):
@mock.patch("apps.lyric.views.requests.post")
def test_sends_link_to_login_using_token_uid(self, mock_post):
self.client.post(
"/apps/lyric/send_login_email", data={"email": "discoman@example.com"}
)
token = Token.objects.get()
expected_url = f"http://testserver/apps/lyric/login?token={token.uid}"
(subject, body, from_email, to_list), kwargs = mock_send_mail.call_args
self.assertIn(expected_url, body)
data = mock_post.call_args.kwargs["data"]
self.assertIn(expected_url, data["text"])
class LoginViewTest(TestCase):
def test_redirects_to_home_page(self):