From 9d2b60b56b30906e23c7001867bf365b974ae3bb Mon Sep 17 00:00:00 2001 From: Pea Tyczynska Date: Tue, 14 May 2019 15:05:52 +0100 Subject: [PATCH] Show try again link when email verification fails --- .../email-reply-to/verify.html | 1 + tests/app/main/views/test_service_settings.py | 38 ++++--------------- 2 files changed, 8 insertions(+), 31 deletions(-) diff --git a/app/templates/views/service-settings/email-reply-to/verify.html b/app/templates/views/service-settings/email-reply-to/verify.html index 777a4b854..86aceb915 100644 --- a/app/templates/views/service-settings/email-reply-to/verify.html +++ b/app/templates/views/service-settings/email-reply-to/verify.html @@ -31,5 +31,6 @@ {{ banner("Yay success! Your new reply-to email has been added ^__^", type='message', with_tick=True) }} {% elif verification_status == "failure" %} {{ banner("Sorry dawg, this email address doesn't seem to be working :d", type='dangerous') }} + Try again {% endif %} {% endblock %} diff --git a/tests/app/main/views/test_service_settings.py b/tests/app/main/views/test_service_settings.py index d5e26fb30..b210baf1b 100644 --- a/tests/app/main/views/test_service_settings.py +++ b/tests/app/main/views/test_service_settings.py @@ -2003,34 +2003,6 @@ def test_incorrect_sms_sender_input( assert count_of_api_calls == 0 -@pytest.mark.parametrize('fixture, data, api_default_args', [ - (no_reply_to_email_addresses, {}, True), - (multiple_reply_to_email_addresses, {}, False), - (multiple_reply_to_email_addresses, {"is_default": "y"}, True) -]) -def test_add_reply_to_email_address( - fixture, - data, - api_default_args, - mocker, - client_request, - mock_add_reply_to_email_address -): - fixture(mocker) - data['email_address'] = "test@example.com" - client_request.post( - 'main.service_add_email_reply_to', - service_id=SERVICE_ONE_ID, - _data=data - ) - - mock_add_reply_to_email_address.assert_called_once_with( - SERVICE_ONE_ID, - email_address="test@example.com", - is_default=api_default_args - ) - - @pytest.mark.parametrize('fixture, data, api_default_args', [ (no_reply_to_email_addresses, {}, True), (multiple_reply_to_email_addresses, {}, False), @@ -2052,18 +2024,18 @@ def test_add_reply_to_email_address_sends_test_notification( service_id=SERVICE_ONE_ID, notification_id="123", _external=True, - ) + ) + "?is_default={}".format(api_default_args) ) mock_verify.assert_called_once_with("test@example.com") -@pytest.mark.parametrize("is_default", ["True", "False"]) +@pytest.mark.parametrize("is_default", [True, False]) @pytest.mark.parametrize("status,expected_failure,expected_success", [ ("delivered", 0, 1), ("pending", 0, 0), ("permanent-failure", 1, 0), ]) -def test_add_reply_to_email_address_waiting_page( +def test_verify_reply_to_address( mocker, client_request, fake_uuid, status, expected_failure, expected_success, is_default ): notification = { @@ -2092,6 +2064,10 @@ def test_add_reply_to_email_address_waiting_page( ) else: mock_add_reply_to_email_address.assert_not_called() + if status == "permanent-failure": + assert page.find('a', text='Try again').attrs["href"] == url_for( + 'main.service_add_email_reply_to', service_id=SERVICE_ONE_ID + ) def test_add_reply_to_email_address_success():