Admins won't see buttons for broadcast actions they can't do

These actions are creating, accepting and rejecting broadcasts.
This commit is contained in:
Pea Tyczynska
2021-04-14 18:13:18 +01:00
parent 002dd7485d
commit 0c0d9dd72f
4 changed files with 22 additions and 8 deletions

View File

@@ -388,6 +388,7 @@ def test_broadcast_dashboard(
)
@pytest.mark.parametrize("user_is_platform_admin", [True, False])
@pytest.mark.parametrize('endpoint', (
'.broadcast_dashboard', '.broadcast_dashboard_previous', '.broadcast_dashboard_rejected',
))
@@ -395,11 +396,17 @@ def test_broadcast_dashboard_does_not_have_button_for_view_only_user(
client_request,
service_one,
active_user_view_permissions,
platform_admin_user_no_service_permissions,
mock_get_broadcast_messages,
endpoint,
user_is_platform_admin
):
if user_is_platform_admin:
client_request.login(platform_admin_user_no_service_permissions)
else:
client_request.login(active_user_view_permissions)
service_one['permissions'] += ['broadcast']
client_request.login(active_user_view_permissions)
page = client_request.get(
endpoint,
service_id=SERVICE_ONE_ID,
@@ -1841,14 +1848,17 @@ def test_can_approve_own_broadcast_in_trial_mode(
@freeze_time('2020-02-22T22:22:22.000000')
@pytest.mark.parametrize("user_is_platform_admin", [True, False])
def test_view_only_user_cant_approve_broadcast(
mocker,
client_request,
service_one,
active_user_with_permissions,
active_user_view_permissions,
platform_admin_user_no_service_permissions,
mock_get_broadcast_template,
fake_uuid,
user_is_platform_admin
):
mocker.patch(
'app.broadcast_message_api_client.get_broadcast_message',
@@ -1861,8 +1871,12 @@ def test_view_only_user_cant_approve_broadcast(
status='pending-approval',
),
)
if user_is_platform_admin:
current_user = platform_admin_user_no_service_permissions
else:
current_user = active_user_view_permissions
mocker.patch('app.user_api_client.get_user', side_effect=[
active_user_view_permissions, # Current user
current_user, # Current user
active_user_with_permissions, # User who created broadcast
])
service_one['permissions'] += ['broadcast']