import pytest

from ukr.wfst import normalize


@pytest.mark.parametrize("spoken,expected", [
    ("сьома година двадцять п'ять хвилин", '07:25'),
    ("сьома година п'ять хвилин", '07:05'),
    ("дванадцята година п'ять хвилин", '12:05'),
    ("о пів на десяту", '09:30'),
    ("о пів на першу", '00:30'),
    ("пів на третю", '02:30'),
    ("о пів на двадцять четверту", '23:30'),
    ("чверть на одинадцяту", '10:15'),
    ("за чверть одинадцята", '10:45'),
    ("п'ять хвилин на дванадцяту", '11:05'),
    ("сорок сім хвилин на двадцять другу", '21:47'),
    ("дванадцята нуль нуль", '12:00'),
    ("дванадцята година нуль нуль", '12:00'),
    ("одинадцята нуль шість", '11:06'),
    ("шоста сорок три", '06:43'),
])
def test_time(spoken, expected):
    assert normalize(spoken) == expected
