diff --git a/app/dao/services_dao.py b/app/dao/services_dao.py index 08b30b381..71896a5df 100644 --- a/app/dao/services_dao.py +++ b/app/dao/services_dao.py @@ -239,8 +239,8 @@ def dao_fetch_weekly_historical_stats_for_service(service_id): @statsd(namespace='dao') -def dao_fetch_todays_stats_for_all_services(): - return db.session.query( +def dao_fetch_todays_stats_for_all_services(include_from_test_key=True): + query = db.session.query( Notification.notification_type, Notification.status, Notification.service_id, @@ -258,3 +258,8 @@ def dao_fetch_todays_stats_for_all_services(): ).order_by( Notification.service_id ) + + if not include_from_test_key: + query = query.filter(Notification.key_type != KEY_TYPE_TEST) + + return query diff --git a/tests/app/dao/test_services_dao.py b/tests/app/dao/test_services_dao.py index 266ac1468..eacca3db3 100644 --- a/tests/app/dao/test_services_dao.py +++ b/tests/app/dao/test_services_dao.py @@ -628,3 +628,14 @@ def test_dao_fetch_todays_stats_for_all_services_includes_all_keys_by_default(no assert len(stats) == 1 assert stats[0].count == 3 + + +def test_dao_fetch_todays_stats_for_all_services_can_exclude_from_test_key(notify_db, notify_db_session): + create_notification(notify_db, notify_db_session, key_type=KEY_TYPE_NORMAL) + create_notification(notify_db, notify_db_session, key_type=KEY_TYPE_TEAM) + create_notification(notify_db, notify_db_session, key_type=KEY_TYPE_TEST) + + stats = dao_fetch_todays_stats_for_all_services(include_from_test_key=False).all() + + assert len(stats) == 1 + assert stats[0].count == 2