def test_message_syntax_valid_duplicates_warning(language_code): if 'duplicates_warning' in translations.translations[language_code]: message = translations.translations[language_code]['duplicates_warning'] babel_language_code = 'en' if language_code == 'la' else language_code formatters.I18nFormatter(babel_language_code).format( message, lexemes=1, )
def test_message_syntax_valid_edit_unmatched_warning(language_code): if 'edit_unmatched_warning' in translations.translations[language_code]: message = translations.translations[language_code]['edit_unmatched_warning'] babel_language_code = 'en' if language_code == 'la' else language_code formatters.I18nFormatter(babel_language_code).format( message, forms=1, )
def test_message_syntax_valid_edit_form_list_item(language_code): if 'edit_form_list_item' in translations.translations[language_code]: message = translations.translations[language_code]['edit_form_list_item'] babel_language_code = 'en' if language_code == 'la' else language_code formatters.I18nFormatter(babel_language_code).format( message, form_link='', grammatical_feature_labels=[], statements=0, )
def test_message_syntax_valid_description_with_forms_and_senses(language_code): if 'description_with_forms_and_senses' in translations.translations[language_code]: message = translations.translations[language_code]['description_with_forms_and_senses'] babel_language_code = 'en' if language_code == 'la' else language_code formatters.I18nFormatter(babel_language_code).format( message, description='description', forms=0, senses=0, )
def test_message_syntax_valid_bulk_not_allowed(language_code: str, gender: str): if 'bulk_not_allowed' in translations.translations[language_code]: message = translations.translations[language_code]['bulk_not_allowed'] formatters.I18nFormatter( locale_identifier=lang_int2babel(language_code), get_gender=lambda value: gender, ).format( message, user='******', )
def test_message_syntax_valid_duplicates_instructions(language_code: str, number: int): if 'duplicates_instructions' in translations.translations[language_code]: message = translations.translations[language_code][ 'duplicates_instructions'] formatters.I18nFormatter( locale_identifier=lang_int2babel(language_code), get_gender=unused, ).format( message, lexemes=number, )
def test_message_syntax_valid_edit_unmatched_warning(language_code: str, number: int): if 'edit_unmatched_warning' in translations.translations[language_code]: message = translations.translations[language_code][ 'edit_unmatched_warning'] formatters.I18nFormatter( locale_identifier=lang_int2babel(language_code), get_gender=unused, ).format( message, forms=number, )
def test_message_syntax_valid_description_with_forms_and_senses( language_code: str, number: int): if 'description_with_forms_and_senses' in translations.translations[ language_code]: message = translations.translations[language_code][ 'description_with_forms_and_senses'] formatters.I18nFormatter( locale_identifier=lang_int2babel(language_code), get_gender=unused, ).format( message, description='description', forms=number, senses=number, )
def test_message_syntax_valid_edit_form_list_item(language_code: str, list: builtins.list[str], number: int): if 'edit_form_list_item' in translations.translations[language_code]: message = translations.translations[language_code][ 'edit_form_list_item'] formatters.I18nFormatter( locale_identifier=lang_int2babel(language_code), get_gender=unused, ).format( message, form_link='', grammatical_feature_labels=list, statements=number, )
def test_I18nFormatter_en(formats, user, expected): genders = { 'Keith': 'm', 'Keira': 'f', 'Kim': 'n', } i18n_formatter = formatters.I18nFormatter(locale_identifier='en', get_gender=lambda value: genders[value]) formatted = i18n_formatter.format( Markup('{user!g:m=His:f=Her:n=Their} preferred {count!p:one={url!h:format} is:other={url!h:formats} are} {formats!l}.'), user=user, count=len(formats), formats=formats, url='/wiki/Format', ) assert formatted == expected assert isinstance(formatted, Markup)