3
0
Fork 0

fix: convert datetime values to local zone for app.render_date()

This commit is contained in:
Lance Edgar 2026-02-25 15:14:56 -06:00
parent 55102f7b43
commit 71758a46c6
2 changed files with 29 additions and 3 deletions

View file

@ -619,11 +619,28 @@ app_title = WuttaTest
self.assertEqual(self.app.render_currency(value), "($42.42)")
def test_render_date(self):
self.config.setdefault("wuttatest.timezone.default", "America/Los_Angeles")
tzlocal = get_timezone_by_name("America/Los_Angeles")
# null
self.assertEqual(self.app.render_date(None), "")
# basic date
dt = datetime.date(2024, 12, 11)
self.assertEqual(self.app.render_date(dt), "2024-12-11")
# local/aware datetime
dt = datetime.datetime(2024, 12, 11, 20, 30, tzinfo=tzlocal)
self.assertEqual(self.app.render_date(dt), "2024-12-11")
# naive UTC, but convert to local
dt = datetime.datetime(2024, 12, 12, 2, 30)
self.assertEqual(self.app.render_date(dt), "2024-12-11")
# naive UTC, no local conversion
dt = datetime.datetime(2024, 12, 12, 2, 30)
self.assertEqual(self.app.render_date(dt, local=False), "2024-12-12")
def test_render_datetime(self):
self.config.setdefault("wuttatest.timezone.default", "America/Los_Angeles")
tzlocal = get_timezone_by_name("America/Los_Angeles")