mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-20 22:40:31 -04:00
Merge pull request #3969 from alphagov/fix-suspend-archive-perm-178770416
Fix backend permissions for stopping services
This commit is contained in:
@@ -4111,10 +4111,12 @@ def test_switch_service_enable_international_sms_and_letters(
|
||||
assert mocked_fn.call_args[0][0] == service_one['id']
|
||||
|
||||
|
||||
@pytest.mark.parametrize('user', (
|
||||
create_platform_admin_user(),
|
||||
create_active_user_with_permissions(),
|
||||
pytest.param(create_active_user_no_settings_permission(), marks=pytest.mark.xfail),
|
||||
@pytest.mark.parametrize('user, is_trial_service', (
|
||||
[create_platform_admin_user(), True],
|
||||
[create_platform_admin_user(), False],
|
||||
[create_active_user_with_permissions(), True],
|
||||
pytest.param(create_active_user_with_permissions(), False, marks=pytest.mark.xfail),
|
||||
pytest.param(create_active_user_no_settings_permission(), True, marks=pytest.mark.xfail),
|
||||
))
|
||||
def test_archive_service_after_confirm(
|
||||
client_request,
|
||||
@@ -4124,8 +4126,11 @@ def test_archive_service_after_confirm(
|
||||
mock_get_organisations_and_services_for_user,
|
||||
mock_get_users_by_service,
|
||||
mock_get_service_templates,
|
||||
service_one,
|
||||
user,
|
||||
is_trial_service,
|
||||
):
|
||||
service_one['restricted'] = is_trial_service
|
||||
mock_api = mocker.patch('app.service_api_client.post')
|
||||
mock_event = mocker.patch('app.main.views.service_settings.create_archive_service_event')
|
||||
redis_delete_mock = mocker.patch('app.notify_client.service_api_client.redis_client.delete')
|
||||
@@ -4149,21 +4154,26 @@ def test_archive_service_after_confirm(
|
||||
assert call(f"user-{sample_uuid()}") in redis_delete_mock.call_args_list
|
||||
|
||||
|
||||
@pytest.mark.parametrize('user', (
|
||||
create_platform_admin_user(),
|
||||
create_active_user_with_permissions(),
|
||||
pytest.param(create_active_user_no_settings_permission(), marks=pytest.mark.xfail),
|
||||
@pytest.mark.parametrize('user, is_trial_service', (
|
||||
[create_platform_admin_user(), True],
|
||||
[create_platform_admin_user(), False],
|
||||
[create_active_user_with_permissions(), True],
|
||||
pytest.param(create_active_user_with_permissions(), False, marks=pytest.mark.xfail),
|
||||
pytest.param(create_active_user_no_settings_permission(), True, marks=pytest.mark.xfail),
|
||||
))
|
||||
def test_archive_service_prompts_user(
|
||||
client_request,
|
||||
mocker,
|
||||
single_reply_to_email_address,
|
||||
single_letter_contact_block,
|
||||
service_one,
|
||||
single_sms_sender,
|
||||
mock_get_service_settings_page_common,
|
||||
user,
|
||||
is_trial_service,
|
||||
):
|
||||
mocked_fn = mocker.patch('app.service_api_client.post')
|
||||
mock_api = mocker.patch('app.service_api_client.post')
|
||||
service_one['restricted'] = is_trial_service
|
||||
client_request.login(user)
|
||||
|
||||
settings_page = client_request.get(
|
||||
@@ -4186,7 +4196,7 @@ def test_archive_service_prompts_user(
|
||||
'There’s no way to undo this. '
|
||||
'Yes, delete'
|
||||
)
|
||||
assert mocked_fn.called is False
|
||||
assert mock_api.called is False
|
||||
|
||||
|
||||
def test_cant_archive_inactive_service(
|
||||
@@ -4208,8 +4218,7 @@ def test_cant_archive_inactive_service(
|
||||
|
||||
@pytest.mark.parametrize('user', (
|
||||
create_platform_admin_user(),
|
||||
create_active_user_with_permissions(),
|
||||
pytest.param(create_active_user_no_settings_permission(), marks=pytest.mark.xfail),
|
||||
pytest.param(create_active_user_with_permissions(), marks=pytest.mark.xfail),
|
||||
))
|
||||
def test_suspend_service_after_confirm(
|
||||
client_request,
|
||||
@@ -4236,8 +4245,7 @@ def test_suspend_service_after_confirm(
|
||||
|
||||
@pytest.mark.parametrize('user', (
|
||||
create_platform_admin_user(),
|
||||
create_active_user_with_permissions(),
|
||||
pytest.param(create_active_user_no_settings_permission(), marks=pytest.mark.xfail),
|
||||
pytest.param(create_active_user_with_permissions(), marks=pytest.mark.xfail),
|
||||
))
|
||||
def test_suspend_service_prompts_user(
|
||||
client_request,
|
||||
@@ -4278,8 +4286,7 @@ def test_cant_suspend_inactive_service(
|
||||
|
||||
@pytest.mark.parametrize('user', (
|
||||
create_platform_admin_user(),
|
||||
create_active_user_with_permissions(),
|
||||
pytest.param(create_active_user_no_settings_permission(), marks=pytest.mark.xfail),
|
||||
pytest.param(create_active_user_with_permissions(), marks=pytest.mark.xfail),
|
||||
))
|
||||
def test_resume_service_after_confirm(
|
||||
mocker,
|
||||
@@ -4308,8 +4315,7 @@ def test_resume_service_after_confirm(
|
||||
|
||||
@pytest.mark.parametrize('user', (
|
||||
create_platform_admin_user(),
|
||||
create_active_user_with_permissions(),
|
||||
pytest.param(create_active_user_no_settings_permission(), marks=pytest.mark.xfail),
|
||||
pytest.param(create_active_user_with_permissions(), marks=pytest.mark.xfail),
|
||||
))
|
||||
def test_resume_service_prompts_user(
|
||||
client_request,
|
||||
|
||||
Reference in New Issue
Block a user