Spaces:
Running
Running
File size: 2,064 Bytes
043ecd7 3cba8de 043ecd7 3cba8de 043ecd7 3cba8de 491ad42 3cba8de 491ad42 3cba8de | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | from langmap.langid_mapping import langid_to_language
def test_langid_mapping_is_nonempty():
assert len(langid_to_language) > 0
def test_langid_mapping_count():
assert len(langid_to_language) == 22, f"Expected 22 Tier 1 languages, got {len(langid_to_language)}"
def test_keys_are_bcp47_tokens():
for key in langid_to_language:
assert key.startswith("<2"), f"Key {key} does not start with '<2'"
assert key.endswith(">"), f"Key {key} does not end with '>'"
def test_values_are_nonempty_strings():
for key, value in langid_to_language.items():
assert isinstance(value, str) and value.strip(), f"Empty language name for {key}"
def test_no_leading_or_trailing_whitespace():
for key, value in langid_to_language.items():
assert value == value.strip(), f"Language name for {key} has leading/trailing whitespace: {value!r}"
def test_no_duplicate_language_names():
names = list(langid_to_language.values())
assert len(names) == len(set(names)), "Duplicate language names found"
def test_all_tier1_languages_present():
"""Verify all 22 Tier 1 languages are present."""
expected = {
"Afrikaans",
"Bulgarian",
"Bosnian",
"Catalan",
"Czech",
"Danish",
"German",
"Spanish",
"Filipino",
"French",
"Croatian",
"Indonesian",
"Italian",
"Macedonian",
"Malay",
"Maltese",
"Norwegian Nynorsk",
"Norwegian",
"Portuguese",
"Romanian",
"Slovak",
"Swedish",
}
values = set(langid_to_language.values())
assert values == expected, f"Mismatch: missing={expected - values}, extra={values - expected}"
def test_removed_languages_absent():
"""Languages outside Tier 1 must not be in the mapping."""
values = set(langid_to_language.values())
for lang in ["Japanese", "Hindi", "Swahili", "Arabic", "Russian", "Polish", "Dutch"]:
assert lang not in values, f"{lang} should have been removed (not Tier 1)"
|