From: Brett Cannon Date: Mon, 30 Jan 2012 17:48:16 +0000 (-0500) Subject: Issue #13890: Fix importlib case-sensitivity tests to not run on Windows. X-Git-Tag: v3.3.0a1~278 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=01ad3251aefa7d62308af2580c095ba8ad7885d8;p=thirdparty%2FPython%2Fcpython.git Issue #13890: Fix importlib case-sensitivity tests to not run on Windows. Thanks to os.environ under Windows only updating the dict and not the environment itself (as exposed by nt.environ), tests using PYTHONCASEOK always fail. Now the tests are skipped when os.environ does not do what is expected. --- diff --git a/Lib/importlib/test/source/test_case_sensitivity.py b/Lib/importlib/test/source/test_case_sensitivity.py index 73777de4ba4a..569f516d5a22 100644 --- a/Lib/importlib/test/source/test_case_sensitivity.py +++ b/Lib/importlib/test/source/test_case_sensitivity.py @@ -37,6 +37,9 @@ class CaseSensitivityTest(unittest.TestCase): def test_sensitive(self): with test_support.EnvironmentVarGuard() as env: env.unset('PYTHONCASEOK') + if b'PYTHONCASEOK' in _bootstrap._os.environ: + self.skipTest('os.environ changes not reflected in ' + '_os.environ') sensitive, insensitive = self.sensitivity_test() self.assertTrue(hasattr(sensitive, 'load_module')) self.assertIn(self.name, sensitive.get_filename(self.name)) @@ -45,6 +48,9 @@ class CaseSensitivityTest(unittest.TestCase): def test_insensitive(self): with test_support.EnvironmentVarGuard() as env: env.set('PYTHONCASEOK', '1') + if b'PYTHONCASEOK' not in _bootstrap._os.environ: + self.skipTest('os.environ changes not reflected in ' + '_os.environ') sensitive, insensitive = self.sensitivity_test() self.assertTrue(hasattr(sensitive, 'load_module')) self.assertIn(self.name, sensitive.get_filename(self.name))