Simplified TimeFormat.g().

This commit is contained in:
Nick Pope 2020-11-12 14:19:17 +00:00 committed by GitHub
parent 895f6e4992
commit 0cbccaebeb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 5 deletions

View File

@ -100,11 +100,7 @@ class TimeFormat(Formatter):
def g(self):
"Hour, 12-hour format without leading zeros; i.e. '1' to '12'"
if self.data.hour == 0:
return 12
if self.data.hour > 12:
return self.data.hour - 12
return self.data.hour
return self.data.hour % 12 or 12
def G(self):
"Hour, 24-hour format without leading zeros; i.e. '0' to '23'"

View File

@ -178,3 +178,19 @@ class DateFormatTests(SimpleTestCase):
dateformat.format(datetime(year, 9, 8, 5, 0), 'y'),
expected_date,
)
def test_twelve_hour_format(self):
tests = [
(0, '12'),
(1, '1'),
(11, '11'),
(12, '12'),
(13, '1'),
(23, '11'),
]
for hour, expected in tests:
with self.subTest(hour=hour):
self.assertEqual(
dateformat.format(datetime(2000, 1, 1, hour), 'g'),
expected,
)