diff --git a/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_reset_password.py b/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_reset_password.py index 3882bc2f..83881a81 100644 --- a/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_reset_password.py +++ b/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_reset_password.py @@ -113,7 +113,7 @@ Please add a valid secondary email before trying again." ], ) @responses.activate -def test_api_mailboxes__reset_password_admin_successful(role): +def test_api_mailboxes__reset_password_admin_successful(role, dimail_token_ok): # pylint: disable=W0613 """Owner and admin users should be able to reset password on mailboxes. New password should be sent to secondary email.""" mail_domain = factories.MailDomainEnabledFactory() @@ -124,12 +124,7 @@ def test_api_mailboxes__reset_password_admin_successful(role): client.force_login(access.user) dimail_url = settings.MAIL_PROVISIONING_API_URL - responses.add( - responses.GET, - f"{dimail_url}/token/", - body=dimail.TOKEN_OK, - status=200, - ) + # token response in fixtures responses.add( responses.POST, f"{dimail_url}/domains/{mail_domain.name}/mailboxes/{mailbox.local_part}/reset_password/", @@ -161,7 +156,7 @@ def test_api_mailboxes__reset_password_non_existing(): @responses.activate -def test_api_mailboxes__reset_password_connexion_failed(): +def test_api_mailboxes__reset_password_connexion_failed(dimail_token_ok): # pylint: disable=W0613 """ No mail is sent when password reset failed because of connexion error. """ @@ -175,12 +170,7 @@ def test_api_mailboxes__reset_password_connexion_failed(): client.force_login(access.user) dimail_url = settings.MAIL_PROVISIONING_API_URL - responses.add( - responses.GET, - f"{dimail_url}/token/", - body=dimail.TOKEN_OK, - status=200, - ) + # token response in fixtures responses.add( responses.POST, f"{dimail_url}/domains/{mail_domain.name}/mailboxes/{mailbox.local_part}/reset_password/", diff --git a/src/backend/mailbox_manager/tests/conftest.py b/src/backend/mailbox_manager/tests/conftest.py index e6dcc29f..74e108e2 100644 --- a/src/backend/mailbox_manager/tests/conftest.py +++ b/src/backend/mailbox_manager/tests/conftest.py @@ -9,17 +9,15 @@ import responses from rest_framework import status from mailbox_manager import factories -from mailbox_manager.tests.fixtures.dimail import TOKEN_OK ## DIMAIL RESPONSES @pytest.fixture(name="dimail_token_ok") def fixture_dimail_token_ok(): """Mock dimail response when /token/ endpoit is given valid credentials.""" - responses.add( - responses.GET, + responses.get( re.compile(r".*/token/"), - body=TOKEN_OK, + json={"access_token": "token", "token_type": "bearer"}, status=status.HTTP_200_OK, content_type="application/json", ) diff --git a/src/backend/mailbox_manager/tests/fixtures/dimail.py b/src/backend/mailbox_manager/tests/fixtures/dimail.py index 997db134..bd2e5555 100644 --- a/src/backend/mailbox_manager/tests/fixtures/dimail.py +++ b/src/backend/mailbox_manager/tests/fixtures/dimail.py @@ -287,10 +287,6 @@ DOMAIN_SPEC = [ ] -## TOKEN -TOKEN_OK = json.dumps({"access_token": "token", "token_type": "bearer"}) - - ## ALLOWS def response_allows_created(user_name, domain_name): """mimic dimail response upon successful allows creation. diff --git a/src/backend/mailbox_manager/tests/test_admin_actions.py b/src/backend/mailbox_manager/tests/test_admin_actions.py index 15556122..19de4d73 100644 --- a/src/backend/mailbox_manager/tests/test_admin_actions.py +++ b/src/backend/mailbox_manager/tests/test_admin_actions.py @@ -19,7 +19,6 @@ from .fixtures.dimail import ( CHECK_DOMAIN_BROKEN, CHECK_DOMAIN_OK, DOMAIN_SPEC, - TOKEN_OK, response_mailbox_created, ) @@ -101,7 +100,9 @@ def test_fetch_domain_status__should_switch_to_failed_when_domain_broken(client) @responses.activate @pytest.mark.django_db -def test_fetch_domain_status__should_switch_to_enabled_when_domain_ok(client): +def test_fetch_domain_status__should_switch_to_enabled_when_domain_ok( + client, dimail_token_ok +): # pylint: disable=W0613 """Test admin action should switch domain state to ENABLED when dimail's response is "ok". It should also activate any pending mailbox.""" admin = core_factories.UserFactory(is_staff=True, is_superuser=True) @@ -127,13 +128,7 @@ def test_fetch_domain_status__should_switch_to_enabled_when_domain_ok(client): content_type="application/json", ) # we need to get a token to create mailboxes - responses.add( - responses.GET, - re.compile(r".*/token/"), - body=TOKEN_OK, - status=status.HTTP_200_OK, - content_type="application/json", - ) + # token response in fixtures responses.add( responses.POST, re.compile(rf".*/domains/{domain1.name}/mailboxes/"), @@ -208,7 +203,7 @@ def test_fetch_domain_expected_config__should_not_fetch_for_disabled_domain(clie @responses.activate @pytest.mark.django_db -def test_send_pending_mailboxes(client): +def test_send_pending_mailboxes(client, dimail_token_ok): # pylint: disable=W0613 """Test admin action to send pending mailboxes to dimail.""" admin = core_factories.UserFactory(is_staff=True, is_superuser=True) client.force_login(admin) @@ -223,13 +218,7 @@ def test_send_pending_mailboxes(client): url = reverse("admin:mailbox_manager_maildomain_changelist") for mailbox in mailboxes: - responses.add( - responses.GET, - re.compile(r".*/token/"), - body=TOKEN_OK, - status=status.HTTP_200_OK, - content_type="application/json", - ) + # token response in fixtures responses.add( responses.POST, re.compile(rf".*/domains/{domain.name}/mailboxes/"), @@ -247,7 +236,7 @@ def test_send_pending_mailboxes(client): @responses.activate @pytest.mark.django_db -def test_send_pending_mailboxes__listing_failed_mailboxes(client): +def test_send_pending_mailboxes__listing_failed_mailboxes(client, dimail_token_ok): # pylint: disable=W0613 """Test admin action to send pending mailboxes to dimail.""" admin = core_factories.UserFactory(is_staff=True, is_superuser=True) client.force_login(admin) @@ -261,13 +250,7 @@ def test_send_pending_mailboxes__listing_failed_mailboxes(client): } url = reverse("admin:mailbox_manager_maildomain_changelist") - responses.add( - responses.GET, - re.compile(r".*/token/"), - body=TOKEN_OK, - status=status.HTTP_200_OK, - content_type="application/json", - ) + # token response in fixtures responses.add( responses.POST, re.compile(rf".*/domains/{domain.name}/mailboxes/"),