コード例 #1
0
ファイル: test_translator.py プロジェクト: nuxeo/nuxeo-drive
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 unkown 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"
コード例 #2
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"
コード例 #3
0
ファイル: test_translator.py プロジェクト: nuxeo/nuxeo-drive
def test_translate_twice():
    """ Check that the values array is not mutated. """
    Translator(get_folder("i18n"))
    values = ["value"]
    first = Translator.get("TOKEN_NORMAL", values)
    second = Translator.get("TOKEN_NORMAL", values)

    assert first == second
    assert values == ["value"]
コード例 #4
0
def test_translate_twice():
    """ Check that the values array is not mutated. """
    Translator(MockManager(), get_folder("i18n"))
    values = ["value"]
    first = Translator.get("TOKEN_NORMAL", values)
    second = Translator.get("TOKEN_NORMAL", values)

    assert first == second
    assert values == ["value"]
コード例 #5
0
def test_translate_twice_different_values():
    """ Check that the values array is taken into account in the LRU cache. """
    Translator(get_folder("i18n"))
    values1 = ["value1"]
    values2 = ["value2"]
    first = Translator.get("TOKEN_NORMAL", values=values1)
    second = Translator.get("TOKEN_NORMAL", values=values2)

    assert first != second
コード例 #6
0
ファイル: test_translator.py プロジェクト: nuxeo/nuxeo-drive
def test_load_existing_language():
    Translator(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"
コード例 #7
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"
コード例 #8
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"
コード例 #9
0
ファイル: fatal_error.py プロジェクト: nnmalpere/nuxeo-drive
def check_executable_path_error_qt(path: Path, /) -> None:
    """Display an error using Qt about the app not running from the right path."""

    from nxdrive.qt import constants as qt
    from nxdrive.qt.imports import QApplication, QMessageBox, QPixmap
    from nxdrive.translator import Translator
    from nxdrive.utils import find_icon, find_resource

    app = QApplication([])
    app.setQuitOnLastWindowClosed(True)

    Translator(find_resource("i18n"))
    content = Translator.get("RUNNING_FROM_WRONG_PATH",
                             values=[str(path), f"{APP_NAME}.app"])

    icon = QPixmap(str(find_icon("app_icon.svg")))
    msg = QMessageBox()
    msg.setIconPixmap(icon)
    msg.setText(content)
    msg.setWindowTitle(APP_NAME)
    msg.addButton(Translator.get("QUIT"), qt.AcceptRole)
    msg.exec_()
コード例 #10
0
ファイル: test_translator.py プロジェクト: nuxeo/nuxeo-drive
def test_token(token, result):
    options = ["First Token", "Another One"]
    Translator(get_folder("i18n"))
    assert Translator.get(token, options) == result
コード例 #11
0
ファイル: test_translator.py プロジェクト: nuxeo/nuxeo-drive
def test_non_iniialized():
    Translator._singleton = None
    with pytest.raises(RuntimeError):
        Translator.get("TEST")
コード例 #12
0
def test_token(token, result):
    options = ["First Token", "Another One"]
    Translator(MockManager(), get_folder("i18n"))
    assert Translator.get(token, options) == result
コード例 #13
0
def test_non_iniialized():
    Translator._singleton = None
    with pytest.raises(RuntimeError):
        Translator.get("TEST")
コード例 #14
0
def test_token(token, result):
    options = ["First Token", "Another One"]
    Translator(get_folder("i18n"))
    assert Translator.get(token, values=options) == result