1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
from datetime import time
import pytest
import babel.dates as dates
@pytest.mark.parametrize("locale, time, expected_period_id", [
("de", time(7, 42), "morning1"), # (from, before)
("de", time(3, 11), "night1"), # (after, before)
("fi", time(0), "midnight"), # (at)
("en_US", time(12), "noon"), # (at)
("en_US", time(21), "night1"), # (from, before) across 0:00
("en_US", time(5), "night1"), # (from, before) across 0:00
("en_US", time(6), "morning1"), # (from, before)
("agq", time(10), "am"), # no periods defined
("agq", time(22), "pm"), # no periods defined
("am", time(14), "afternoon1"), # (before, after)
])
def test_day_period_rules(locale, time, expected_period_id):
assert dates.get_period_id(time, locale=locale) == expected_period_id
|