mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
61 lines
1.7 KiB
Python
61 lines
1.7 KiB
Python
|
# -*- coding: utf-8 -*-
|
||
|
"""
|
||
|
test_locale
|
||
|
~~~~~~~~~~
|
||
|
|
||
|
Test locale.
|
||
|
|
||
|
:copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
|
||
|
:license: BSD, see LICENSE for details.
|
||
|
"""
|
||
|
|
||
|
import pytest
|
||
|
|
||
|
from sphinx import locale
|
||
|
|
||
|
|
||
|
@pytest.fixture(autouse=True)
|
||
|
def cleanup_translations():
|
||
|
yield
|
||
|
locale.translators = {}
|
||
|
|
||
|
|
||
|
def test_init(rootdir):
|
||
|
# not initialized yet
|
||
|
_ = locale.get_translation('myext')
|
||
|
assert _('Hello world') == 'Hello world'
|
||
|
assert _('Hello sphinx') == 'Hello sphinx'
|
||
|
assert _('Hello reST') == 'Hello reST'
|
||
|
|
||
|
# load locale1
|
||
|
locale.init([rootdir / 'test-locale' / 'locale1'], 'en', 'myext')
|
||
|
_ = locale.get_translation('myext')
|
||
|
assert _('Hello world') == 'HELLO WORLD'
|
||
|
assert _('Hello sphinx') == 'Hello sphinx'
|
||
|
assert _('Hello reST') == 'Hello reST'
|
||
|
|
||
|
# load both locale1 and locale2
|
||
|
locale.init([rootdir / 'test-locale' / 'locale1',
|
||
|
rootdir / 'test-locale' / 'locale2'], 'en', 'myext')
|
||
|
_ = locale.get_translation('myext')
|
||
|
assert _('Hello world') == 'HELLO WORLD'
|
||
|
assert _('Hello sphinx') == 'HELLO SPHINX'
|
||
|
assert _('Hello reST') == 'Hello reST'
|
||
|
|
||
|
|
||
|
def test_init_with_unknown_language(rootdir):
|
||
|
locale.init([rootdir / 'test-locale' / 'locale1'], 'unknown', 'myext')
|
||
|
_ = locale.get_translation('myext')
|
||
|
assert _('Hello world') == 'Hello world'
|
||
|
assert _('Hello sphinx') == 'Hello sphinx'
|
||
|
assert _('Hello reST') == 'Hello reST'
|
||
|
|
||
|
|
||
|
def test_add_message_catalog(app, rootdir):
|
||
|
app.config.language = 'en'
|
||
|
app.add_message_catalog('myext', rootdir / 'test-locale' / 'locale1')
|
||
|
_ = locale.get_translation('myext')
|
||
|
assert _('Hello world') == 'HELLO WORLD'
|
||
|
assert _('Hello sphinx') == 'Hello sphinx'
|
||
|
assert _('Hello reST') == 'Hello reST'
|