Skip to content

Commit fa93ca5

Browse files
tamsk-91hugovk
authored andcommitted
Add regression tests for far-future overflow
1 parent d5e7688 commit fa93ca5

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

‎tests/test_time.py‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,9 @@ def test_naturaldelta_too_large_value_raises() -> None:
196196
(NOW - dt.timedelta(days=365 + 35), "1 year, 1 month ago"),
197197
(dt.timedelta(days=-10000), "27 years from now"),
198198
(dt.timedelta(days=365 + 35), "1 year, 1 month ago"),
199+
# far-future values used to raise OverflowError in _abs_timedelta
200+
(dt.datetime(9999, 12, 31), "7,995 years from now"),
201+
(dt.timedelta(days=-800_000), "2,192 years from now"),
199202
(22.5, "22 seconds ago"),
200203
(23.5, "24 seconds ago"),
201204
(23.9, "24 seconds ago"),
@@ -645,6 +648,12 @@ def test_precisedelta_one_unit_enough(
645648
(dt.timedelta(days=32), "seconds", "1 month and 1 day"),
646649
(dt.timedelta(days=62), "seconds", "2 months and 1 day"),
647650
(dt.timedelta(days=92), "seconds", "3 months"),
651+
# a negative delta reaching back past year 1 used to raise OverflowError
652+
(
653+
dt.timedelta(days=-800_000),
654+
"seconds",
655+
"2,191 years, 9 months and 10 days",
656+
),
648657
(dt.timedelta(days=31), "days", "1 month"),
649658
(dt.timedelta(days=32), "days", "1 month and 1 day"),
650659
(dt.timedelta(days=62), "days", "2 months and 1 day"),

0 commit comments

Comments
 (0)