diff options
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/support/__init__.py | 3 | ||||
-rw-r--r-- | Lib/test/support/os_helper.py | 11 | ||||
-rw-r--r-- | Lib/test/test__colorize.py | 3 | ||||
-rw-r--r-- | Lib/test/test__osx_support.py | 13 | ||||
-rw-r--r-- | Lib/test/test_builtin.py | 3 | ||||
-rw-r--r-- | Lib/test/test_getopt.py | 3 | ||||
-rw-r--r-- | Lib/test/test_io.py | 3 | ||||
-rw-r--r-- | Lib/test/test_locale.py | 4 | ||||
-rw-r--r-- | Lib/test/test_pathlib/test_pathlib.py | 10 | ||||
-rw-r--r-- | Lib/test/test_platform.py | 3 | ||||
-rw-r--r-- | Lib/test/test_regrtest.py | 3 | ||||
-rw-r--r-- | Lib/test/test_shutil.py | 10 | ||||
-rw-r--r-- | Lib/test/test_site.py | 4 |
13 files changed, 30 insertions, 43 deletions
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py index b9ccf7bb4c6..b35ce1b2285 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py @@ -2855,8 +2855,7 @@ def no_color(): swap_attr(_colorize, "can_colorize", lambda file=None: False), EnvironmentVarGuard() as env, ): - for var in {"FORCE_COLOR", "NO_COLOR", "PYTHON_COLORS"}: - env.unset(var) + env.unset("FORCE_COLOR", "NO_COLOR", "PYTHON_COLORS") env.set("NO_COLOR", "1") yield diff --git a/Lib/test/support/os_helper.py b/Lib/test/support/os_helper.py index 15dcdc9b1fd..4e39b5a835a 100644 --- a/Lib/test/support/os_helper.py +++ b/Lib/test/support/os_helper.py @@ -720,9 +720,10 @@ else: class EnvironmentVarGuard(collections.abc.MutableMapping): + """Class to help protect the environment variable properly. - """Class to help protect the environment variable properly. Can be used as - a context manager.""" + Can be used as a context manager. + """ def __init__(self): self._environ = os.environ @@ -756,8 +757,10 @@ class EnvironmentVarGuard(collections.abc.MutableMapping): def set(self, envvar, value): self[envvar] = value - def unset(self, envvar): - del self[envvar] + def unset(self, envvar, /, *envvars): + """Unset one or more environment variables.""" + for ev in (envvar, *envvars): + del self[ev] def copy(self): # We do what os.environ.copy() does. diff --git a/Lib/test/test__colorize.py b/Lib/test/test__colorize.py index 42ee7b50a2a..b2f0bb1386f 100644 --- a/Lib/test/test__colorize.py +++ b/Lib/test/test__colorize.py @@ -10,8 +10,7 @@ from test.support.os_helper import EnvironmentVarGuard @contextlib.contextmanager def clear_env(): with EnvironmentVarGuard() as mock_env: - for var in "FORCE_COLOR", "NO_COLOR", "PYTHON_COLORS", "TERM": - mock_env.unset(var) + mock_env.unset("FORCE_COLOR", "NO_COLOR", "PYTHON_COLORS", "TERM") yield mock_env diff --git a/Lib/test/test__osx_support.py b/Lib/test/test__osx_support.py index 4a14cb35213..53aa26620a6 100644 --- a/Lib/test/test__osx_support.py +++ b/Lib/test/test__osx_support.py @@ -20,12 +20,13 @@ class Test_OSXSupport(unittest.TestCase): self.prog_name = 'bogus_program_xxxx' self.temp_path_dir = os.path.abspath(os.getcwd()) self.env = self.enterContext(os_helper.EnvironmentVarGuard()) - for cv in ('CFLAGS', 'LDFLAGS', 'CPPFLAGS', - 'BASECFLAGS', 'BLDSHARED', 'LDSHARED', 'CC', - 'CXX', 'PY_CFLAGS', 'PY_LDFLAGS', 'PY_CPPFLAGS', - 'PY_CORE_CFLAGS', 'PY_CORE_LDFLAGS'): - if cv in self.env: - self.env.unset(cv) + + self.env.unset( + 'CFLAGS', 'LDFLAGS', 'CPPFLAGS', + 'BASECFLAGS', 'BLDSHARED', 'LDSHARED', 'CC', + 'CXX', 'PY_CFLAGS', 'PY_LDFLAGS', 'PY_CPPFLAGS', + 'PY_CORE_CFLAGS', 'PY_CORE_LDFLAGS' + ) def add_expected_saved_initial_values(self, config_vars, expected_vars): # Ensure that the initial values for all modified config vars diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py index a0bb6855c8f..90998ffce6d 100644 --- a/Lib/test/test_builtin.py +++ b/Lib/test/test_builtin.py @@ -1568,8 +1568,7 @@ class BuiltinTest(ComplexesAreIdenticalMixin, unittest.TestCase): # try to get a user preferred encoding different than the current # locale encoding to check that open() uses the current locale # encoding and not the user preferred encoding - for key in ('LC_ALL', 'LANG', 'LC_CTYPE'): - env.unset(key) + env.unset('LC_ALL', 'LANG', 'LC_CTYPE') self.write_testfile() current_locale_encoding = locale.getencoding() diff --git a/Lib/test/test_getopt.py b/Lib/test/test_getopt.py index ed967ad2761..8d0d5084abb 100644 --- a/Lib/test/test_getopt.py +++ b/Lib/test/test_getopt.py @@ -13,8 +13,7 @@ sentinel = object() class GetoptTests(unittest.TestCase): def setUp(self): self.env = self.enterContext(EnvironmentVarGuard()) - if "POSIXLY_CORRECT" in self.env: - del self.env["POSIXLY_CORRECT"] + del self.env["POSIXLY_CORRECT"] def assertError(self, *args, **kwargs): self.assertRaises(getopt.GetoptError, *args, **kwargs) diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py index 23eb3b32b51..455a87b9ab0 100644 --- a/Lib/test/test_io.py +++ b/Lib/test/test_io.py @@ -2896,8 +2896,7 @@ class TextIOWrapperTest(unittest.TestCase): # try to get a user preferred encoding different than the current # locale encoding to check that TextIOWrapper() uses the current # locale encoding and not the user preferred encoding - for key in ('LC_ALL', 'LANG', 'LC_CTYPE'): - env.unset(key) + env.unset('LC_ALL', 'LANG', 'LC_CTYPE') current_locale_encoding = locale.getencoding() b = self.BytesIO() diff --git a/Lib/test/test_locale.py b/Lib/test/test_locale.py index dc1ba258e0b..798c6ad62cd 100644 --- a/Lib/test/test_locale.py +++ b/Lib/test/test_locale.py @@ -500,9 +500,7 @@ class TestMiscellaneous(unittest.TestCase): try: with os_helper.EnvironmentVarGuard() as env: - for key in ('LC_ALL', 'LC_CTYPE', 'LANG', 'LANGUAGE'): - env.unset(key) - + env.unset('LC_ALL', 'LC_CTYPE', 'LANG', 'LANGUAGE') env.set('LC_CTYPE', 'UTF-8') with check_warnings(('', DeprecationWarning)): diff --git a/Lib/test/test_pathlib/test_pathlib.py b/Lib/test/test_pathlib/test_pathlib.py index 36fb62e53e1..bda94f51968 100644 --- a/Lib/test/test_pathlib/test_pathlib.py +++ b/Lib/test/test_pathlib/test_pathlib.py @@ -3232,7 +3232,7 @@ class PathTest(PurePathTest): p7 = P(f'~{fakename}/Documents') with os_helper.EnvironmentVarGuard() as env: - env.pop('HOME', None) + env.unset('HOME') self.assertEqual(p1.expanduser(), P(userhome) / 'Documents') self.assertEqual(p2.expanduser(), P(userhome) / 'Documents') @@ -3345,10 +3345,7 @@ class PathTest(PurePathTest): def test_expanduser_windows(self): P = self.cls with os_helper.EnvironmentVarGuard() as env: - env.pop('HOME', None) - env.pop('USERPROFILE', None) - env.pop('HOMEPATH', None) - env.pop('HOMEDRIVE', None) + env.unset('HOME', 'USERPROFILE', 'HOMEPATH', 'HOMEDRIVE') env['USERNAME'] = 'alice' # test that the path returns unchanged @@ -3386,8 +3383,7 @@ class PathTest(PurePathTest): env['HOMEPATH'] = 'Users\\alice' check() - env.pop('HOMEDRIVE', None) - env.pop('HOMEPATH', None) + env.unset('HOMEDRIVE', 'HOMEPATH') env['USERPROFILE'] = 'C:\\Users\\alice' check() diff --git a/Lib/test/test_platform.py b/Lib/test/test_platform.py index e04ad142061..ca73b043d31 100644 --- a/Lib/test/test_platform.py +++ b/Lib/test/test_platform.py @@ -368,8 +368,7 @@ class PlatformTest(unittest.TestCase): with support.swap_attr(platform, '_wmi_query', raises_oserror): with os_helper.EnvironmentVarGuard() as environ: try: - if 'PROCESSOR_ARCHITEW6432' in environ: - del environ['PROCESSOR_ARCHITEW6432'] + del environ['PROCESSOR_ARCHITEW6432'] environ['PROCESSOR_ARCHITECTURE'] = 'foo' platform._uname_cache = None system, node, release, version, machine, processor = platform.uname() diff --git a/Lib/test/test_regrtest.py b/Lib/test/test_regrtest.py index 38a0d3f6779..510c8f69631 100644 --- a/Lib/test/test_regrtest.py +++ b/Lib/test/test_regrtest.py @@ -422,8 +422,7 @@ class ParseArgsTestCase(unittest.TestCase): # which has an unclear API with os_helper.EnvironmentVarGuard() as env: # Ignore SOURCE_DATE_EPOCH env var if it's set - if 'SOURCE_DATE_EPOCH' in env: - del env['SOURCE_DATE_EPOCH'] + del env['SOURCE_DATE_EPOCH'] regrtest = main.Regrtest(ns) diff --git a/Lib/test/test_shutil.py b/Lib/test/test_shutil.py index 86bdc302ea7..ed01163074a 100644 --- a/Lib/test/test_shutil.py +++ b/Lib/test/test_shutil.py @@ -2458,7 +2458,7 @@ class TestWhich(BaseTest, unittest.TestCase): def test_environ_path_missing(self): with os_helper.EnvironmentVarGuard() as env: - env.pop('PATH', None) + del env['PATH'] # without confstr with unittest.mock.patch('os.confstr', side_effect=ValueError, \ @@ -2484,7 +2484,7 @@ class TestWhich(BaseTest, unittest.TestCase): def test_empty_path_no_PATH(self): with os_helper.EnvironmentVarGuard() as env: - env.pop('PATH', None) + del env['PATH'] rv = shutil.which(self.file) self.assertIsNone(rv) @@ -3446,8 +3446,7 @@ class TestGetTerminalSize(unittest.TestCase): expected = (int(size[1]), int(size[0])) # reversed order with os_helper.EnvironmentVarGuard() as env: - del env['LINES'] - del env['COLUMNS'] + env.unset('LINES', 'COLUMNS') actual = shutil.get_terminal_size() self.assertEqual(expected, actual) @@ -3455,8 +3454,7 @@ class TestGetTerminalSize(unittest.TestCase): @unittest.skipIf(support.is_wasi, "WASI has no /dev/null") def test_fallback(self): with os_helper.EnvironmentVarGuard() as env: - del env['LINES'] - del env['COLUMNS'] + env.unset('LINES', 'COLUMNS') # sys.__stdout__ has no fileno() with support.swap_attr(sys, '__stdout__', None): diff --git a/Lib/test/test_site.py b/Lib/test/test_site.py index 035913cdd05..16cf25798a7 100644 --- a/Lib/test/test_site.py +++ b/Lib/test/test_site.py @@ -355,9 +355,7 @@ class HelperFunctionsTests(unittest.TestCase): with EnvironmentVarGuard() as environ, \ mock.patch('os.path.expanduser', lambda path: path): - - del environ['PYTHONUSERBASE'] - del environ['APPDATA'] + environ.unset('PYTHONUSERBASE', 'APPDATA') user_base = site.getuserbase() self.assertTrue(user_base.startswith('~' + os.sep), |