Limit big numbers to the last 7 days

Implements and depends on:
- https://github.com/alphagov/notifications-api/pull/241
This commit is contained in:
Chris Hill-Scott
2016-04-19 17:02:49 +01:00
parent 5bf0d8fe70
commit be7c7cebbc
4 changed files with 8 additions and 9 deletions

View File

@@ -38,7 +38,7 @@ def service_dashboard(service_id):
return render_template(
'views/dashboard/dashboard.html',
statistics=add_rates_to(
statistics_api_client.get_statistics_for_service(service_id)['data']
statistics_api_client.get_statistics_for_service(service_id, limit_days=7)['data']
),
templates=service_api_client.get_service_templates(service_id)['data'],
template_statistics=aggregate_usage(
@@ -50,15 +50,11 @@ def service_dashboard(service_id):
@main.route("/services/<service_id>/dashboard.json")
@login_required
def service_dashboard_updates(service_id):
statistics = statistics_api_client.get_statistics_for_service(service_id)['data']
template_statistics = aggregate_usage(template_statistics_client.get_template_statistics_for_service(service_id))
return jsonify(**{
'today': render_template(
'views/dashboard/today.html',
statistics=add_rates_to(
statistics_api_client.get_statistics_for_service(service_id)['data']
statistics_api_client.get_statistics_for_service(service_id, limit_days=7)['data']
),
template_statistics=aggregate_usage(
template_statistics_client.get_template_statistics_for_service(service_id)

View File

@@ -12,7 +12,10 @@ class StatisticsApiClient(BaseAPIClient):
self.client_id = app.config['ADMIN_CLIENT_USER_NAME']
self.secret = app.config['ADMIN_CLIENT_SECRET']
def get_statistics_for_service(self, service_id):
def get_statistics_for_service(self, service_id, limit_days=None):
params = {}
if limit_days is not None:
params['limit_days'] = limit_days
return self.get(
url='/service/{}/notifications-statistics'.format(service_id),
)

View File

@@ -77,7 +77,7 @@ def test_should_show_recent_templates_on_dashboard(app_,
assert response.status_code == 200
response.get_data(as_text=True)
mock_get_service_statistics.assert_called_once_with(SERVICE_ONE_ID)
mock_get_service_statistics.assert_called_once_with(SERVICE_ONE_ID, limit_days=7)
mock_template_stats.assert_called_once_with(SERVICE_ONE_ID)
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')

View File

@@ -172,7 +172,7 @@ def mock_delete_service(mocker, mock_get_service):
@pytest.fixture(scope='function')
def mock_get_service_statistics(mocker):
def _create(service_id):
def _create(service_id, limit_days=None):
return {'data': [{}]}
return mocker.patch(