From 96974cae2cba05c914779780ee05d9916004f34b Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Thu, 5 Mar 2026 10:46:00 -0500 Subject: [PATCH] Add tests for previous draw date function --- tests/test_util.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/tests/test_util.py b/tests/test_util.py index 4fd05a0..07ae5bf 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -25,6 +25,11 @@ def test_get_next_draw_date_none() -> None: assert not ud.get_next_draw_date(game=None) +def test_get_previous_draw_date_none() -> None: + """Test when a game is not provided.""" + assert not ud.get_previous_draw_date(game=None) + + def test_get_next_draw_date_minimum() -> None: """Test the next draw date returned for each game and when an invalid name is presented (None)""" assert ud.get_next_draw_date(game="mega-millions") @@ -34,6 +39,15 @@ def test_get_next_draw_date_minimum() -> None: ud.get_next_draw_date() +def test_get_previous_draw_date_minimum() -> None: + """Test the next draw date returned for each game and when an invalid name is presented (None)""" + assert ud.get_previous_draw_date(game="mega-millions") + assert ud.get_previous_draw_date(game="powerball") + assert not ud.get_previous_draw_date(game="something") + with pytest.raises(TypeError): + ud.get_previous_draw_date() + + def test_get_next_draw_date_specified_from_date() -> None: """Test drawing dates returned for each possible day of the week.""" assert ud.get_next_draw_date(game="mega-millions", from_date='02/15/2026') == '02/17/2026' @@ -50,6 +64,22 @@ def test_get_next_draw_date_specified_from_date() -> None: assert ud.get_next_draw_date(game='powerball', from_date='02/20/2026') == '02/21/2026' +def test_get_previous_draw_date_specified_from_date() -> None: + """Test drawing dates returned for each possible day of the week.""" + assert ud.get_previous_draw_date(game="mega-millions", from_date='02/15/2026') == '02/13/2026' + assert ud.get_previous_draw_date(game="mega-millions", from_date='02/16/2026') == '02/13/2026' + assert ud.get_previous_draw_date(game="mega-millions", from_date='02/17/2026') == '02/13/2026' + assert ud.get_previous_draw_date(game="mega-millions", from_date='02/18/2026') == '02/17/2026' + assert ud.get_previous_draw_date(game="mega-millions", from_date='02/19/2026') == '02/17/2026' + + assert ud.get_previous_draw_date(game='powerball', from_date='02/15/2026') == '02/14/2026' + assert ud.get_previous_draw_date(game='powerball', from_date='02/16/2026') == '02/14/2026' + assert ud.get_previous_draw_date(game='powerball', from_date='02/17/2026') == '02/16/2026' + assert ud.get_previous_draw_date(game='powerball', from_date='02/18/2026') == '02/16/2026' + assert ud.get_previous_draw_date(game='powerball', from_date='02/19/2026') == '02/18/2026' + assert ud.get_previous_draw_date(game='powerball', from_date='02/20/2026') == '02/18/2026' + + @pytest.mark.parametrize("game", ['powerball', 'mega-millions']) def test_scrape_game_history(game) -> None: """Test scraping the powerball result page for 1996, 2020, and current year."""