diff options
author | Alex Morega <alex@grep.ro> | 2013-07-06 15:23:04 +0200 |
---|---|---|
committer | Alex Morega <alex@grep.ro> | 2013-07-06 15:23:04 +0200 |
commit | 79945ebd708889be3e9a11c3f9258e8627756fbf (patch) | |
tree | e1551982ae1371712f821d5e5b978bef17e68e4d /tests | |
parent | 1b8ac4af57b81aeb5d9a8ac72c1122e1f7a7a15b (diff) | |
download | babel-79945ebd708889be3e9a11c3f9258e8627756fbf.tar.gz |
test isolation for changes to os.environ
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_core.py | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/tests/test_core.py b/tests/test_core.py index f00a13d..4046a30 100644 --- a/tests/test_core.py +++ b/tests/test_core.py @@ -20,6 +20,13 @@ from babel import core, Locale from babel.core import default_locale, Locale +@pytest.fixture +def os_environ(monkeypatch): + mock_environ = dict(os.environ) + monkeypatch.setattr(os, 'environ', mock_environ) + return mock_environ + + class LocaleEnvironmentTestMixin(object): def setUp(self): @@ -93,11 +100,10 @@ class TestLocaleClass: assert locale.language == 'en' assert locale.territory == 'US' - def test_default(self): - # TODO isolate this test + def test_default(self, os_environ): for name in ['LANGUAGE', 'LC_ALL', 'LC_CTYPE', 'LC_MESSAGES']: - os.environ[name] = '' - os.environ['LANG'] = 'fr_FR.UTF-8' + os_environ[name] = '' + os_environ['LANG'] = 'fr_FR.UTF-8' default = Locale.default('LC_MESSAGES') assert (default.language, default.territory) == ('fr', 'FR') @@ -233,14 +239,13 @@ class TestLocaleClass: assert Locale('ru').plural_form(100) == 'many' -def test_default_locale(): - # TODO isolate this test +def test_default_locale(os_environ): for name in ['LANGUAGE', 'LC_ALL', 'LC_CTYPE', 'LC_MESSAGES']: - os.environ[name] = '' - os.environ['LANG'] = 'fr_FR.UTF-8' + os_environ[name] = '' + os_environ['LANG'] = 'fr_FR.UTF-8' assert default_locale('LC_MESSAGES') == 'fr_FR' - os.environ['LC_MESSAGES'] = 'POSIX' + os_environ['LC_MESSAGES'] = 'POSIX' assert default_locale('LC_MESSAGES') == 'en_US_POSIX' |