diff --git a/app/dao/services_dao.py b/app/dao/services_dao.py index 027cd9f82..c362e19d9 100644 --- a/app/dao/services_dao.py +++ b/app/dao/services_dao.py @@ -333,6 +333,9 @@ def dao_fetch_monthly_historical_stats_for_service(service_id, year): @statsd(namespace='dao') def dao_fetch_todays_stats_for_all_services(include_from_test_key=True, only_active=True): + today = date.today() + start_date = get_london_midnight_in_utc(today) + end_date = get_london_midnight_in_utc(today + timedelta(days=1)) subquery = db.session.query( Notification.notification_type, @@ -340,7 +343,8 @@ def dao_fetch_todays_stats_for_all_services(include_from_test_key=True, only_act Notification.service_id, func.count(Notification.id).label('count') ).filter( - func.date(Notification.created_at) == date.today(), + Notification.created_at >= start_date, + Notification.created_at < end_date ).group_by( Notification.notification_type, Notification.status, diff --git a/tests/app/service/test_rest.py b/tests/app/service/test_rest.py index 912e8c120..92e8ddd41 100644 --- a/tests/app/service/test_rest.py +++ b/tests/app/service/test_rest.py @@ -1635,6 +1635,7 @@ def test_get_detailed_services_only_includes_todays_notifications(notify_db, not create_sample_notification(notify_db, notify_db_session, created_at=datetime(2015, 10, 9, 23, 59)) create_sample_notification(notify_db, notify_db_session, created_at=datetime(2015, 10, 10, 0, 0)) create_sample_notification(notify_db, notify_db_session, created_at=datetime(2015, 10, 10, 12, 0)) + create_sample_notification(notify_db, notify_db_session, created_at=datetime(2015, 10, 10, 23, 0)) with freeze_time('2015-10-10T12:00:00'): data = get_detailed_services(start_date=datetime.utcnow().date(), end_date=datetime.utcnow().date()) @@ -1643,7 +1644,7 @@ def test_get_detailed_services_only_includes_todays_notifications(notify_db, not assert len(data) == 1 assert data[0]['statistics'] == { EMAIL_TYPE: {'delivered': 0, 'failed': 0, 'requested': 0}, - SMS_TYPE: {'delivered': 0, 'failed': 0, 'requested': 2}, + SMS_TYPE: {'delivered': 0, 'failed': 0, 'requested': 3}, LETTER_TYPE: {'delivered': 0, 'failed': 0, 'requested': 0} }