summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAlex Morega <alex@grep.ro>2013-07-06 15:23:04 +0200
committerAlex Morega <alex@grep.ro>2013-07-06 15:23:04 +0200
commit79945ebd708889be3e9a11c3f9258e8627756fbf (patch)
treee1551982ae1371712f821d5e5b978bef17e68e4d /tests
parent1b8ac4af57b81aeb5d9a8ac72c1122e1f7a7a15b (diff)
downloadbabel-79945ebd708889be3e9a11c3f9258e8627756fbf.tar.gz
test isolation for changes to os.environ
Diffstat (limited to 'tests')
-rw-r--r--tests/test_core.py23
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'