Skip to content

Commit 1899aac

Browse files
test(invalid_iso_week): ready, set, go!
1 parent 541d263 commit 1899aac

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

pandas/tests/tools/test_to_datetime.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -794,12 +794,37 @@ def test_to_datetime_np_str(self):
794794
["2015-1-1", "%G-%V-%u", datetime(2014, 12, 29, 0, 0)],
795795
["2015-1-4", "%G-%V-%u", datetime(2015, 1, 1, 0, 0)],
796796
["2015-1-7", "%G-%V-%u", datetime(2015, 1, 4, 0, 0)],
797+
["2024-52-1", "%G-%V-%u", datetime(2024, 12, 23, 0, 0)],
798+
["2024-52-7", "%G-%V-%u", datetime(2024, 12, 29, 0, 0)],
799+
["2025-1-1", "%G-%V-%u", datetime(2024, 12, 30, 0, 0)],
800+
["2020-53-1", "%G-%V-%u", datetime(2020, 12, 28, 0, 0)],
797801
],
798802
)
799803
def test_to_datetime_iso_week_year_format(self, s, _format, dt):
800804
# See GH#16607
801805
assert to_datetime(s, format=_format) == dt
802806

807+
@pytest.mark.parametrize(
808+
"msg, s, _format",
809+
[
810+
[
811+
"Week 53 does not exist in ISO year 2024",
812+
"2024 53 1",
813+
"%G %V %u",
814+
],
815+
[
816+
"Week 53 does not exist in ISO year 2023",
817+
"2023 53 1",
818+
"%G %V %u",
819+
],
820+
],
821+
)
822+
@pytest.mark.parametrize("errors", ["raise"])
823+
def test_invalid_iso_week_53(self, msg, s, _format, errors):
824+
# See GH#60885
825+
with pytest.raises(ValueError, match=msg):
826+
to_datetime(s, format=_format, errors=errors)
827+
803828
@pytest.mark.parametrize(
804829
"msg, s, _format",
805830
[

0 commit comments

Comments
 (0)