From 72a1ce6b813f65ce4b60f168eee469927314ec7e Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Thu, 5 Mar 2026 11:04:19 -0500 Subject: [PATCH] Change to new util function for table name test, add get_recent_draw_date function --- lottery_predictor/collect.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lottery_predictor/collect.py b/lottery_predictor/collect.py index 9f8334a..7c8d17e 100644 --- a/lottery_predictor/collect.py +++ b/lottery_predictor/collect.py @@ -20,10 +20,21 @@ project_variables = envutil.load_environment_variables() def get_record_count(table_name: str) -> str | None: """get the most recent draw record from the specified table""" - if table_name in ['PowerballDraw', 'MegaMillionsDraw']: + if drawutil.check_table_name(table_name): dal.connect() session = dal.Session() target_table = Base.registry._class_registry.get(table_name) return session.query(func.count(target_table.draw_date)).first()[0] else: - raise ValueError('Valid values are PowerballDraw, MegaMillionsDraw') + raise ValueError('An invalid table name was specified.') + + +def get_recent_draw_date(table_name: str) -> datetime | None: + """get the most recent draw date from the specified table""" + if drawutil.check_table_name(table_name): + dal.connect() + session = dal.Session() + target_table = Base.registry._class_registry.get(table_name) + return session.query(func.max(target_table.draw_date)).first()[0] + else: + raise ValueError('An invalid table name was specified.')