Skip to content

Commit

Permalink
Freeze format_time() tests to a specific date to fix test failures (#998
Browse files Browse the repository at this point in the history
)

Freeze the date when performing the tests for format_time() with
a timezone specified.  Since the time object does not specify a date,
the formatter uses the format string specific to the current date.
As a result, if the current DST state is different than when the test
was last updated, it failed.
  • Loading branch information
mgorny committed May 9, 2023
1 parent 134c792 commit 8b152db
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions tests/test_dates.py
Expand Up @@ -601,12 +601,13 @@ def test_format_time(timezone_getter):
custom = dates.format_time(t, "hh 'o''clock' a, zzzz", tzinfo=eastern, locale='en')
assert custom == "09 o'clock AM, Eastern Daylight Time"

t = time(15, 30)
paris = dates.format_time(t, format='full', tzinfo=paris, locale='fr_FR')
assert paris == '15:30:00 heure normale d’Europe centrale'
with freezegun.freeze_time("2023-01-01"):
t = time(15, 30)
paris = dates.format_time(t, format='full', tzinfo=paris, locale='fr_FR')
assert paris == '15:30:00 heure normale d’Europe centrale'

us_east = dates.format_time(t, format='full', tzinfo=eastern, locale='en_US')
assert us_east == '3:30:00\u202fPM Eastern Standard Time'
us_east = dates.format_time(t, format='full', tzinfo=eastern, locale='en_US')
assert us_east == '3:30:00\u202fPM Eastern Standard Time'


def test_format_skeleton(timezone_getter):
Expand Down

0 comments on commit 8b152db

Please sign in to comment.