Esempio n. 1
0
def test_load_file():
    Translator(get_folder("i18n"))

    # Verify the call to save
    assert Translator.locale() == "en"

    # Change to an existing language
    Translator.set("fr")
    assert Translator.locale() == "fr"

    # Test unknown key
    assert Translator.get("BOUZOUF") == "BOUZOUF"

    # Test fallback
    assert Translator.get("FALLBACK") == "Fallback"

    # Try to switch to bad language
    with pytest.raises(ValueError):
        Translator.set("abcd")
    assert Translator.locale() == "fr"

    # Go back to an existing one
    Translator.set("en")
    assert Translator.locale() == "en"
    assert Translator.get("BOUZOUF") == "BOUZOUF"

    # Change to an existing composed language
    Translator.set("de-DE")
    assert Translator.locale() == "de-DE"
    assert Translator.get("CONNECTION_REFUSED") == "Connection refused"
Esempio n. 2
0
def test_load_existing_language():
    Translator(MockManager(), get_folder("i18n"), "fr")

    # Should not fallback on en
    assert Translator.locale() == "fr"

    # Test the key fallback
    assert Translator.get("FALLBACK") == "Fallback"
    assert Translator.get("LANGUAGE") == "Fran\xe7ais"
    assert Translator.get("BOUZOUF") == "BOUZOUF"
Esempio n. 3
0
def test_load_file():
    manager = MockManager()
    Translator(manager, get_folder("i18n"))

    # Verify the call to save
    assert manager.called
    assert Translator.locale() == "en"
    manager.called = False

    # Change to an existing language
    Translator.set("fr")
    assert manager.called
    assert Translator.locale() == "fr"

    # Test unkown key
    assert Translator.get("BOUZOUF") == "BOUZOUF"

    # Test fallback
    assert Translator.get("FALLBACK") == "Fallback"
    manager.called = False

    # Try to switch to bad language
    with pytest.raises(ValueError):
        Translator.set("abcd")
    assert Translator.locale() == "fr"

    # Nothing should be saved
    assert not manager.called

    # Go back to an existing one
    Translator.set("en")
    assert manager.called
    assert Translator.locale() == "en"
    assert Translator.get("BOUZOUF") == "BOUZOUF"

    # Change to an existing composed language
    Translator.set("de-DE")
    assert Translator.locale() == "de-DE"
    assert Translator.get("CONNECTION_REFUSED") == "Connection refused"
Esempio n. 4
0
def test_load_bad_language():
    Translator(MockManager(), get_folder("i18n"), "zzzzzz")
    # Should fallback on en
    assert Translator.locale() == "en"