Skip to content

Commit ff11540

Browse files
mgornyhugovk
andauthored
Fix test failures on systems with 32-bit time_t (#177)
Fixes #176 Changes proposed in this pull request: * Change the frozen date from 2020 to 2010, in order to avoid going past 2038 that breaks systems with 32-bit `time_t`. Since the tests are run against frozen time anyway, this shouldn't have any negative consequences, and will resolve the y2k38 issue that's not really related to the project. --------- Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
1 parent 1e934ea commit ff11540

File tree

1 file changed

+35
-34
lines changed

1 file changed

+35
-34
lines changed

tests/test_time.py

Lines changed: 35 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@
2323
ONE_HOUR = 3600
2424
ONE_DAY = 24 * ONE_HOUR
2525
ONE_YEAR = 365.25 * ONE_DAY
26+
FROZEN_DATE = "2010-02-02"
2627

27-
with freeze_time("2020-02-02"):
28+
with freeze_time(FROZEN_DATE):
2829
NOW = dt.datetime.now()
2930
NOW_UTC = dt.datetime.now(tz=dt.timezone.utc)
3031
NOW_UTC_PLUS_01_00 = dt.datetime.now(tz=dt.timezone(offset=dt.timedelta(hours=1)))
@@ -134,7 +135,7 @@ def test_naturaldelta(test_input: float | dt.timedelta, expected: str) -> None:
134135
assert humanize.naturaldelta(-test_input) == expected
135136

136137

137-
@freeze_time("2020-02-02")
138+
@freeze_time(FROZEN_DATE)
138139
@pytest.mark.parametrize(
139140
"test_input, expected",
140141
[
@@ -173,7 +174,7 @@ def test_naturaltime(test_input: dt.datetime, expected: str) -> None:
173174
assert humanize.naturaltime(test_input) == expected
174175

175176

176-
@freeze_time("2020-02-02")
177+
@freeze_time(FROZEN_DATE)
177178
@pytest.mark.parametrize(
178179
"test_input, expected",
179180
[
@@ -214,7 +215,7 @@ def test_naturaltime_nomonths(test_input: dt.datetime, expected: str) -> None:
214215
assert humanize.naturaltime(test_input, months=False) == expected
215216

216217

217-
@freeze_time("2020-02-02")
218+
@freeze_time(FROZEN_DATE)
218219
@pytest.mark.parametrize(
219220
"test_args, expected",
220221
[
@@ -234,7 +235,7 @@ def test_naturalday(test_args: list[typing.Any], expected: str) -> None:
234235
assert humanize.naturalday(*test_args) == expected
235236

236237

237-
@freeze_time("2020-02-02")
238+
@freeze_time(FROZEN_DATE)
238239
@pytest.mark.parametrize(
239240
"test_input, expected",
240241
[
@@ -247,31 +248,31 @@ def test_naturalday(test_args: list[typing.Any], expected: str) -> None:
247248
("Not a date at all.", "Not a date at all."),
248249
(VALUE_ERROR_TEST, str(VALUE_ERROR_TEST)),
249250
(OVERFLOW_ERROR_TEST, str(OVERFLOW_ERROR_TEST)),
250-
(dt.date(2019, 2, 2), "Feb 02 2019"),
251-
(dt.date(2019, 3, 2), "Mar 02 2019"),
252-
(dt.date(2019, 4, 2), "Apr 02 2019"),
253-
(dt.date(2019, 5, 2), "May 02 2019"),
254-
(dt.date(2019, 6, 2), "Jun 02 2019"),
255-
(dt.date(2019, 7, 2), "Jul 02 2019"),
256-
(dt.date(2019, 8, 2), "Aug 02 2019"),
257-
(dt.date(2019, 9, 2), "Sep 02 2019"),
258-
(dt.date(2019, 10, 2), "Oct 02"),
259-
(dt.date(2019, 11, 2), "Nov 02"),
260-
(dt.date(2019, 12, 2), "Dec 02"),
261-
(dt.date(2020, 1, 2), "Jan 02"),
262-
(dt.date(2020, 2, 2), "today"),
263-
(dt.date(2020, 3, 2), "Mar 02"),
264-
(dt.date(2020, 4, 2), "Apr 02"),
265-
(dt.date(2020, 5, 2), "May 02"),
266-
(dt.date(2020, 6, 2), "Jun 02"),
267-
(dt.date(2020, 7, 2), "Jul 02"),
268-
(dt.date(2020, 8, 2), "Aug 02 2020"),
269-
(dt.date(2020, 9, 2), "Sep 02 2020"),
270-
(dt.date(2020, 10, 2), "Oct 02 2020"),
271-
(dt.date(2020, 11, 2), "Nov 02 2020"),
272-
(dt.date(2020, 12, 2), "Dec 02 2020"),
273-
(dt.date(2021, 1, 2), "Jan 02 2021"),
274-
(dt.date(2021, 2, 2), "Feb 02 2021"),
251+
(dt.date(2009, 2, 2), "Feb 02 2009"),
252+
(dt.date(2009, 3, 2), "Mar 02 2009"),
253+
(dt.date(2009, 4, 2), "Apr 02 2009"),
254+
(dt.date(2009, 5, 2), "May 02 2009"),
255+
(dt.date(2009, 6, 2), "Jun 02 2009"),
256+
(dt.date(2009, 7, 2), "Jul 02 2009"),
257+
(dt.date(2009, 8, 2), "Aug 02 2009"),
258+
(dt.date(2009, 9, 2), "Sep 02 2009"),
259+
(dt.date(2009, 10, 2), "Oct 02"),
260+
(dt.date(2009, 11, 2), "Nov 02"),
261+
(dt.date(2009, 12, 2), "Dec 02"),
262+
(dt.date(2010, 1, 2), "Jan 02"),
263+
(dt.date(2010, 2, 2), "today"),
264+
(dt.date(2010, 3, 2), "Mar 02"),
265+
(dt.date(2010, 4, 2), "Apr 02"),
266+
(dt.date(2010, 5, 2), "May 02"),
267+
(dt.date(2010, 6, 2), "Jun 02"),
268+
(dt.date(2010, 7, 2), "Jul 02"),
269+
(dt.date(2010, 8, 2), "Aug 02 2010"),
270+
(dt.date(2010, 9, 2), "Sep 02 2010"),
271+
(dt.date(2010, 10, 2), "Oct 02 2010"),
272+
(dt.date(2010, 11, 2), "Nov 02 2010"),
273+
(dt.date(2010, 12, 2), "Dec 02 2010"),
274+
(dt.date(2011, 1, 2), "Jan 02 2011"),
275+
(dt.date(2011, 2, 2), "Feb 02 2011"),
275276
],
276277
)
277278
def test_naturaldate(test_input: dt.date, expected: str) -> None:
@@ -346,7 +347,7 @@ def test_naturaldelta_minimum_unit_explicit(
346347
assert humanize.naturaldelta(seconds, minimum_unit=minimum_unit) == expected
347348

348349

349-
@freeze_time("2020-02-02")
350+
@freeze_time(FROZEN_DATE)
350351
@pytest.mark.parametrize(
351352
"seconds, expected",
352353
[
@@ -369,7 +370,7 @@ def test_naturaltime_minimum_unit_default(seconds: float, expected: str) -> None
369370
assert humanize.naturaltime(datetime) == expected
370371

371372

372-
@freeze_time("2020-02-02")
373+
@freeze_time(FROZEN_DATE)
373374
@pytest.mark.parametrize(
374375
"minimum_unit, seconds, expected",
375376
[
@@ -415,7 +416,7 @@ def test_naturaltime_minimum_unit_explicit(
415416
assert humanize.naturaltime(datetime, minimum_unit=minimum_unit) == expected
416417

417418

418-
@freeze_time("2020-02-02")
419+
@freeze_time(FROZEN_DATE)
419420
@pytest.mark.parametrize(
420421
"test_input, expected",
421422
[
@@ -449,7 +450,7 @@ def test_naturaltime_timezone(test_input: dt.datetime, expected: str) -> None:
449450
assert humanize.naturaltime(test_input) == expected
450451

451452

452-
@freeze_time("2020-02-02")
453+
@freeze_time(FROZEN_DATE)
453454
@pytest.mark.parametrize(
454455
"test_input, expected",
455456
[

0 commit comments

Comments
 (0)