Coverage for tests/publisher/tests_post_account_details.py: 100%
27 statements
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-28 22:05 +0000
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-28 22:05 +0000
1from unittest.mock import MagicMock, patch
3import responses
4from tests.publisher.endpoint_testing import BaseTestCases
6# Make sure tests fail on stray responses.
7responses.mock.assert_all_requests_are_fired = True
10class PostAccountDetailsPageNotAuth(BaseTestCases.EndpointLoggedOut):
11 def setUp(self):
12 endpoint_url = "/account/publisher"
14 super().setUp(
15 snap_name=None, endpoint_url=endpoint_url, method_endpoint="POST"
16 )
19class PostAccountDetailsPage(BaseTestCases.BaseAppTesting):
20 def setUp(self):
21 api_url = "https://test.com/"
22 endpoint_url = "/account/publisher"
24 super().setUp(
25 snap_name=None, api_url=api_url, endpoint_url=endpoint_url
26 )
28 @responses.activate
29 @patch("webapp.publisher.views.marketo")
30 def test_post_account(self, marketo):
31 self._log_in(self.client)
33 marketo.set_newsletter_subscription = MagicMock()
35 response = self.client.post(
36 self.endpoint_url,
37 data={"email": "test@test.com", "newsletter": True},
38 )
40 marketo.set_newsletter_subscription.assert_called_with(
41 "test@test.com", "True"
42 )
44 self.assertEqual(200, response.status_code)
46 @patch("webapp.publisher.views.marketo")
47 def test_post_account_exception(self, marketo):
48 self._log_in(self.client)
50 marketo.set_newsletter_subscription = MagicMock(
51 side_effect=Exception()
52 )
53 response = self.client.post(self.endpoint_url)
55 self.assertEqual(200, response.status_code)