def test_EN_DE_name_by_number_prefer_DE(number, expected): WeekdayTranslator.reset_options() WeekdayTranslator.prefer("lang_de") WeekdayTranslation("lang_en", lang_en) WeekdayTranslation("lang_de", lang_de) got_name = WeekdayTranslator.get_name_by_number(number) assert got_name == expected
def test_english_number_by_name(name, expected): WeekdayTranslator.reset_options() WeekdayTranslation("lang_en", lang_en) WeekdayTranslation("lang_de", lang_de) print(WeekdayTranslator) got_number = WeekdayTranslator.get_number_by_name(name) assert got_number == expected
def parse_weekday(text, warn=True): clean_text = str(text).strip().casefold() try: return WeekdayTranslator.get_number_by_name(clean_text) except KeyError: log.warning(f"Cannot parse weekday '{text}'.", warn) return None
def weekday_to_str(weekday): if weekday: name = WeekdayTranslator.get_name_by_number(weekday) return name or str(weekday) return "<UNDEFINED>"
def _set_options_weekday(config, name): WeekdayTranslator.set_options(config.get("names") or {}, name)
def _reset_options_weekday(): WeekdayTranslator.reset_options()
def test_empty_name_by_number(number, expected): WeekdayTranslator.reset_options() got_name = WeekdayTranslator.get_name_by_number(number) assert got_name == expected
def test_english_name_by_number(number, expected): WeekdayTranslator.reset_options() WeekdayTranslation("lang_en", lang_en) got_name = WeekdayTranslator.get_name_by_number(number) assert got_name == expected
def test_english_number_by_name_exception(name): WeekdayTranslator.reset_options() WeekdayTranslation("lang_en", lang_en) with pytest.raises(KeyError): WeekdayTranslator.get_number_by_name(name)