With the addition of has_permissions on the dashboard, jobs, and manage_users pages a platform admin user or a users with no permissions on the service could no longer see the page.

A new permission has been added, view_activity, to resolve this issue.
Another pull request in notifications-admin will be required to update all users with a default permission of view_activity.
This commit is contained in:
Rebecca Law
2016-03-29 13:23:36 +01:00
parent 8a55e61dac
commit b79901fe28
7 changed files with 47 additions and 21 deletions

View File

@@ -48,7 +48,7 @@ def test_menu_send_messages(mocker, app_, api_user_active, service_one, mock_get
app_,
api_user_active,
service_one,
['send_texts', 'send_emails', 'send_letters'])
['view_activity', 'send_texts', 'send_emails', 'send_letters'])
page = resp.get_data(as_text=True)
assert url_for(
'main.choose_template',
@@ -74,7 +74,7 @@ def test_menu_manage_service(mocker, app_, api_user_active, service_one, mock_ge
app_,
api_user_active,
service_one,
['manage_users', 'manage_templates', 'manage_settings'])
['view_activity', 'manage_users', 'manage_templates', 'manage_settings'])
page = resp.get_data(as_text=True)
assert url_for(
'main.choose_template',
@@ -99,7 +99,7 @@ def test_menu_manage_api_keys(mocker, app_, api_user_active, service_one, mock_g
app_,
api_user_active,
service_one,
['manage_api_keys', 'access_developer_docs'])
['view_activity', 'manage_api_keys', 'access_developer_docs'])
page = resp.get_data(as_text=True)
assert url_for(
'main.choose_template',
@@ -159,6 +159,6 @@ def test_route_for_service_permissions(mocker,
url_for(
route,
service_id=service_one['id']),
[],
['view_activity'],
api_user_active,
service_one)

View File

@@ -154,6 +154,27 @@ def test_route_permissions(mocker,
service_one)
def test_route_permissions_for_choose_tempalte(mocker,
app_,
api_user_active,
service_one,
mock_get_service_template):
with app_.test_request_context():
validate_route_permission(
mocker,
app_,
"GET",
200,
url_for(
'main.choose_template',
service_id=service_one['id'],
template_type='sms',
template_id=123),
['view_activity'],
api_user_active,
service_one)
def test_route_invalid_permissions(mocker,
app_,
api_user_active,
@@ -175,6 +196,6 @@ def test_route_invalid_permissions(mocker,
service_id=service_one['id'],
template_type='sms',
template_id=123),
['blah'],
['view_activity'],
api_user_active,
service_one)