mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-01 07:35:34 -05:00
Fix for misunderstanding about date range required for templates
stats. It should always be last n days, whether or not there is data.
This commit is contained in:
@@ -974,7 +974,7 @@ def test_get_template_stats_for_service_returns_stats_returns_all_stats_if_no_li
|
||||
|
||||
|
||||
@freeze_time('2016-04-30')
|
||||
def test_get_template_stats_for_service_returns_results_from_first_day_with_data(sample_template):
|
||||
def test_get_template_stats_for_service_returns_no_result_if_no_usage_within_limit_days(sample_template):
|
||||
|
||||
template_stats = dao_get_template_statistics_for_service(sample_template.service.id)
|
||||
assert len(template_stats) == 0
|
||||
@@ -988,29 +988,13 @@ def test_get_template_stats_for_service_returns_results_from_first_day_with_data
|
||||
db.session.add(template_stats)
|
||||
db.session.commit()
|
||||
|
||||
# Retrieve one day of stats - read date is 2016-04-30
|
||||
template_stats = dao_get_template_statistics_for_service(sample_template.service_id, limit_days=1)
|
||||
assert len(template_stats) == 1
|
||||
assert template_stats[0].day == date(2016, 4, 9)
|
||||
# Retrieve a week of stats - read date is 2016-04-30
|
||||
template_stats = dao_get_template_statistics_for_service(sample_template.service_id, limit_days=7)
|
||||
assert len(template_stats) == 0
|
||||
|
||||
# Retrieve three days of stats
|
||||
template_stats = dao_get_template_statistics_for_service(sample_template.service_id, limit_days=3)
|
||||
assert len(template_stats) == 3
|
||||
assert template_stats[0].day == date(2016, 4, 9)
|
||||
assert template_stats[1].day == date(2016, 4, 8)
|
||||
assert template_stats[2].day == date(2016, 4, 7)
|
||||
|
||||
# Retrieve nine days of stats
|
||||
template_stats = dao_get_template_statistics_for_service(sample_template.service_id, limit_days=9)
|
||||
# Retrieve a month of stats - read date is 2016-04-30
|
||||
template_stats = dao_get_template_statistics_for_service(sample_template.service_id, limit_days=30)
|
||||
assert len(template_stats) == 9
|
||||
assert template_stats[0].day == date(2016, 4, 9)
|
||||
assert template_stats[8].day == date(2016, 4, 1)
|
||||
|
||||
# Retrieve with no limit
|
||||
template_stats = dao_get_template_statistics_for_service(sample_template.service_id)
|
||||
assert len(template_stats) == 9
|
||||
assert template_stats[0].day == date(2016, 4, 9)
|
||||
assert template_stats[8].day == date(2016, 4, 1)
|
||||
|
||||
|
||||
def test_get_template_stats_for_service_with_limit_if_no_records_returns_empty_list(sample_template):
|
||||
|
||||
@@ -41,7 +41,7 @@ def test_get_template_statistics_for_service_for_last_week(notify_api, sample_te
|
||||
|
||||
|
||||
@freeze_time('2016-04-30')
|
||||
def test_get_template_statistics_for_service_for_last_actual_week_with_data(notify_api, sample_template):
|
||||
def test_get_template_statistics_for_service_for_last_week_with_no_data(notify_api, sample_template):
|
||||
|
||||
# make 9 stats records from 1st to 9th April
|
||||
for i in range(1, 10):
|
||||
@@ -69,9 +69,17 @@ def test_get_template_statistics_for_service_for_last_actual_week_with_data(noti
|
||||
|
||||
assert response.status_code == 200
|
||||
json_resp = json.loads(response.get_data(as_text=True))
|
||||
assert len(json_resp['data']) == 7
|
||||
assert json_resp['data'][0]['day'] == '2016-04-09'
|
||||
assert json_resp['data'][6]['day'] == '2016-04-03'
|
||||
assert len(json_resp['data']) == 0
|
||||
|
||||
response = client.get(
|
||||
'/service/{}/template-statistics'.format(sample_template.service_id),
|
||||
headers=[('Content-Type', 'application/json'), auth_header],
|
||||
query_string={'limit_days': 30}
|
||||
)
|
||||
|
||||
assert response.status_code == 200
|
||||
json_resp = json.loads(response.get_data(as_text=True))
|
||||
assert len(json_resp['data']) == 9
|
||||
|
||||
|
||||
def test_get_all_template_statistics_for_service(notify_api, sample_template):
|
||||
|
||||
Reference in New Issue
Block a user