diff options
author | Ben Greiner <code@bnavigator.de> | 2022-08-27 15:57:55 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-27 13:57:55 +0000 |
commit | 6725f761f2ac7a853e315790b496a2eb4d926694 (patch) | |
tree | f62c3ad08da058f9d997b7eff52939e2ff4f53a0 /tests/testutils | |
parent | eefcb96179512cce4da171a989bb247ccd954c6e (diff) | |
download | pylint-git-6725f761f2ac7a853e315790b496a2eb4d926694.tar.gz |
nest _test_environ_pythonpath independent of outside PYTHONPATH (#7367)
Closes #7366
Diffstat (limited to 'tests/testutils')
-rw-r--r-- | tests/testutils/test_testutils_utils.py | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/tests/testutils/test_testutils_utils.py b/tests/testutils/test_testutils_utils.py index 79f4e2a81..b521e25c4 100644 --- a/tests/testutils/test_testutils_utils.py +++ b/tests/testutils/test_testutils_utils.py @@ -6,6 +6,8 @@ import os import sys from pathlib import Path +import pytest + from pylint.testutils.utils import _test_cwd, _test_environ_pythonpath, _test_sys_path @@ -50,22 +52,28 @@ def test__test_cwd(tmp_path: Path) -> None: assert os.getcwd() == cwd -def test__test_environ_pythonpath_no_arg() -> None: - python_path = os.environ.get("PYTHONPATH") - with _test_environ_pythonpath(): - assert os.environ.get("PYTHONPATH") == python_path - new_pythonpath = "./whatever/:" - os.environ["PYTHONPATH"] = new_pythonpath - assert os.environ.get("PYTHONPATH") == new_pythonpath - assert os.environ.get("PYTHONPATH") == python_path +@pytest.mark.parametrize("old_pythonpath", ["./oldpath/:", None]) +def test__test_environ_pythonpath_no_arg(old_pythonpath: str) -> None: + real_pythonpath = os.environ.get("PYTHONPATH") + with _test_environ_pythonpath(old_pythonpath): + with _test_environ_pythonpath(): + assert os.environ.get("PYTHONPATH") is None + new_pythonpath = "./whatever/:" + os.environ["PYTHONPATH"] = new_pythonpath + assert os.environ.get("PYTHONPATH") == new_pythonpath + assert os.environ.get("PYTHONPATH") == old_pythonpath + assert os.environ.get("PYTHONPATH") == real_pythonpath -def test__test_environ_pythonpath() -> None: - python_path = os.environ.get("PYTHONPATH") - new_pythonpath = "./whatever/:" - with _test_environ_pythonpath(new_pythonpath): - assert os.environ.get("PYTHONPATH") == new_pythonpath - newer_pythonpath = "./something_else/:" - os.environ["PYTHONPATH"] = newer_pythonpath - assert os.environ.get("PYTHONPATH") == newer_pythonpath - assert os.environ.get("PYTHONPATH") == python_path +@pytest.mark.parametrize("old_pythonpath", ["./oldpath/:", None]) +def test__test_environ_pythonpath(old_pythonpath: str) -> None: + real_pythonpath = os.environ.get("PYTHONPATH") + with _test_environ_pythonpath(old_pythonpath): + new_pythonpath = "./whatever/:" + with _test_environ_pythonpath(new_pythonpath): + assert os.environ.get("PYTHONPATH") == new_pythonpath + newer_pythonpath = "./something_else/:" + os.environ["PYTHONPATH"] = newer_pythonpath + assert os.environ.get("PYTHONPATH") == newer_pythonpath + assert os.environ.get("PYTHONPATH") == old_pythonpath + assert os.environ.get("PYTHONPATH") == real_pythonpath |