mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-02-05 02:42:26 -05:00
Template statistics now surfaced on dashboard.
Job list removed. Template statistics retrieved at same time as notification stats.
This commit is contained in:
@@ -338,6 +338,7 @@ def test_new_invited_user_verifies_and_added_to_service(app_,
|
||||
mock_get_service,
|
||||
mock_get_service_templates,
|
||||
mock_get_service_statistics,
|
||||
mock_get_template_statistics,
|
||||
mock_get_jobs,
|
||||
mock_has_permissions):
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
from flask import url_for
|
||||
|
||||
from tests import validate_route_permission
|
||||
from tests.conftest import SERVICE_ONE_ID
|
||||
|
||||
|
||||
def test_should_show_recent_jobs_on_dashboard(app_,
|
||||
@@ -7,20 +9,22 @@ def test_should_show_recent_jobs_on_dashboard(app_,
|
||||
mock_get_service,
|
||||
mock_get_service_templates,
|
||||
mock_get_service_statistics,
|
||||
mock_get_template_statistics,
|
||||
mock_get_user,
|
||||
mock_get_user_by_email,
|
||||
mock_login,
|
||||
mock_get_jobs,
|
||||
mock_has_permissions):
|
||||
|
||||
with app_.test_request_context():
|
||||
with app_.test_client() as client:
|
||||
client.login(api_user_active)
|
||||
response = client.get(url_for('main.service_dashboard', service_id=123))
|
||||
response = client.get(url_for('main.service_dashboard', service_id=SERVICE_ONE_ID))
|
||||
|
||||
assert response.status_code == 200
|
||||
text = response.get_data(as_text=True)
|
||||
assert 'Test Service' in text
|
||||
mock_get_service_statistics.assert_called_once_with(SERVICE_ONE_ID)
|
||||
mock_get_template_statistics.assert_called_once_with(SERVICE_ONE_ID)
|
||||
|
||||
|
||||
def _test_dashboard_menu(mocker, app_, usr, service, permissions):
|
||||
@@ -37,7 +41,14 @@ def _test_dashboard_menu(mocker, app_, usr, service, permissions):
|
||||
return client.get(url_for('main.service_dashboard', service_id=service['id']))
|
||||
|
||||
|
||||
def test_menu_send_messages(mocker, app_, api_user_active, service_one, mock_get_service_templates, mock_get_jobs):
|
||||
def test_menu_send_messages(mocker,
|
||||
app_,
|
||||
api_user_active,
|
||||
service_one,
|
||||
mock_get_service_templates,
|
||||
mock_get_jobs,
|
||||
mock_get_template_statistics):
|
||||
|
||||
with app_.test_request_context():
|
||||
resp = _test_dashboard_menu(
|
||||
mocker,
|
||||
@@ -63,7 +74,13 @@ def test_menu_send_messages(mocker, app_, api_user_active, service_one, mock_get
|
||||
assert url_for('main.show_all_services') not in page
|
||||
|
||||
|
||||
def test_menu_manage_service(mocker, app_, api_user_active, service_one, mock_get_service_templates, mock_get_jobs):
|
||||
def test_menu_manage_service(mocker,
|
||||
app_,
|
||||
api_user_active,
|
||||
service_one,
|
||||
mock_get_service_templates,
|
||||
mock_get_jobs,
|
||||
mock_get_template_statistics):
|
||||
with app_.test_request_context():
|
||||
resp = _test_dashboard_menu(
|
||||
mocker,
|
||||
@@ -89,7 +106,13 @@ def test_menu_manage_service(mocker, app_, api_user_active, service_one, mock_ge
|
||||
assert url_for('main.show_all_services') not in page
|
||||
|
||||
|
||||
def test_menu_manage_api_keys(mocker, app_, api_user_active, service_one, mock_get_service_templates, mock_get_jobs):
|
||||
def test_menu_manage_api_keys(mocker,
|
||||
app_,
|
||||
api_user_active,
|
||||
service_one,
|
||||
mock_get_service_templates,
|
||||
mock_get_jobs,
|
||||
mock_get_template_statistics):
|
||||
with app_.test_request_context():
|
||||
resp = _test_dashboard_menu(
|
||||
mocker,
|
||||
@@ -114,8 +137,13 @@ def test_menu_manage_api_keys(mocker, app_, api_user_active, service_one, mock_g
|
||||
assert url_for('main.api_keys', service_id=service_one['id']) in page
|
||||
|
||||
|
||||
def test_menu_all_services_for_platform_admin_user(mocker, app_, platform_admin_user, service_one,
|
||||
mock_get_service_templates, mock_get_jobs):
|
||||
def test_menu_all_services_for_platform_admin_user(mocker,
|
||||
app_,
|
||||
platform_admin_user,
|
||||
service_one,
|
||||
mock_get_service_templates,
|
||||
mock_get_jobs,
|
||||
mock_get_template_statistics):
|
||||
with app_.test_request_context():
|
||||
resp = _test_dashboard_menu(
|
||||
mocker,
|
||||
@@ -130,8 +158,8 @@ def test_menu_all_services_for_platform_admin_user(mocker, app_, platform_admin_
|
||||
assert url_for('main.manage_users', service_id=service_one['id']) in page
|
||||
assert url_for('main.service_settings', service_id=service_one['id']) in page
|
||||
assert url_for('main.view_notifications', service_id=service_one['id']) in page
|
||||
assert url_for('main.view_jobs', service_id=service_one['id']) in page
|
||||
assert url_for('main.api_keys', service_id=service_one['id']) not in page
|
||||
assert url_for('main.edit_service_template', service_id=service_one['id'], template_id=1) in page
|
||||
|
||||
|
||||
def test_route_for_service_permissions(mocker,
|
||||
@@ -142,7 +170,8 @@ def test_route_for_service_permissions(mocker,
|
||||
mock_get_user,
|
||||
mock_get_service_templates,
|
||||
mock_get_jobs,
|
||||
mock_get_service_statistics):
|
||||
mock_get_service_statistics,
|
||||
mock_get_template_statistics):
|
||||
routes = [
|
||||
'main.service_dashboard']
|
||||
with app_.test_request_context():
|
||||
|
||||
@@ -15,11 +15,12 @@ def test_sign_out_user(app_,
|
||||
api_user_active,
|
||||
mock_get_user,
|
||||
mock_get_user_by_email,
|
||||
mock_login,
|
||||
mock_get_service_templates,
|
||||
mock_get_service_statistics,
|
||||
mock_login,
|
||||
mock_get_jobs,
|
||||
mock_has_permissions):
|
||||
mock_has_permissions,
|
||||
mock_get_template_statistics):
|
||||
with app_.test_request_context():
|
||||
with app_.test_client() as client:
|
||||
client.login(api_user_active)
|
||||
|
||||
@@ -783,7 +783,24 @@ def mock_remove_user_from_service(mocker):
|
||||
|
||||
|
||||
@pytest.fixture(scope='function')
|
||||
def mock_get_service_statistics(mocker):
|
||||
def mock_get_template_statistics(mocker, service_one):
|
||||
|
||||
import uuid
|
||||
template = template_json(service_one['id'], 1, "Test template", "sms", "Something very interesting")
|
||||
data = {
|
||||
"usage_count": 1,
|
||||
"template": {
|
||||
"name": template['name'],
|
||||
"template_type": template['template_type'],
|
||||
"id": template['id']
|
||||
},
|
||||
"service": template['service'],
|
||||
"id": str(uuid.uuid4()),
|
||||
"day": "2016-04-04"
|
||||
}
|
||||
|
||||
def _get_stats(service_id):
|
||||
return [data]
|
||||
|
||||
return mocker.patch(
|
||||
'app.statistics_api_client.get_statistics_for_service',
|
||||
return_value={'data': [{}]})
|
||||
'app.template_statistics_client.get_template_statistics_for_service', side_effect=_get_stats)
|
||||
|
||||
Reference in New Issue
Block a user