diff options
author | Victor Stinner <vstinner@redhat.com> | 2019-06-17 22:11:00 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-17 22:11:00 (GMT) |
commit | dbdc991a62bc2b3393d287e90292e3603f47d98a (patch) | |
tree | 0ce19cc655ab94674ef13ddeea57963c63b97696 | |
parent | ac7b1a3f32cc81520e8962352294006d65744028 (diff) | |
download | cpython-dbdc991a62bc2b3393d287e90292e3603f47d98a.zip cpython-dbdc991a62bc2b3393d287e90292e3603f47d98a.tar.gz cpython-dbdc991a62bc2b3393d287e90292e3603f47d98a.tar.bz2 |
Fix test_embed.test_pre_initialization_sys_options() env vars (GH-14172)
test_pre_initialization_sys_options() of test_embed now removes
PYTHON* environment variables like PYTHONWARNINGS.
-rw-r--r-- | Lib/test/test_embed.py | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/Lib/test/test_embed.py b/Lib/test/test_embed.py index a39ef2b..1bc8d3a 100644 --- a/Lib/test/test_embed.py +++ b/Lib/test/test_embed.py @@ -26,6 +26,15 @@ API_PYTHON = 2 API_ISOLATED = 3 +def remove_python_envvars(): + env = dict(os.environ) + # Remove PYTHON* environment variables to get deterministic environment + for key in list(env): + if key.startswith('PYTHON'): + del env[key] + return env + + class EmbeddingTestsMixin: def setUp(self): here = os.path.abspath(__file__) @@ -232,7 +241,8 @@ class EmbeddingTests(EmbeddingTestsMixin, unittest.TestCase): Checks that sys.warnoptions and sys._xoptions can be set before the runtime is initialized (otherwise they won't be effective). """ - env = dict(os.environ, PYTHONPATH=os.pathsep.join(sys.path)) + env = remove_python_envvars() + env['PYTHONPATH'] = os.pathsep.join(sys.path) out, err = self.run_embedded_interpreter( "test_pre_initialization_sys_options", env=env) expected_output = ( @@ -591,11 +601,7 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase): def check_all_configs(self, testname, expected_config=None, expected_preconfig=None, add_path=None, stderr=None, *, api): - env = dict(os.environ) - # Remove PYTHON* environment variables to get deterministic environment - for key in list(env): - if key.startswith('PYTHON'): - del env[key] + env = remove_python_envvars() if api == API_ISOLATED: default_preconfig = self.PRE_CONFIG_ISOLATED |