diff options
Diffstat (limited to 'tests/functional/test_pip_runner_script.py')
-rw-r--r-- | tests/functional/test_pip_runner_script.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/functional/test_pip_runner_script.py b/tests/functional/test_pip_runner_script.py new file mode 100644 index 000000000..f2f879b82 --- /dev/null +++ b/tests/functional/test_pip_runner_script.py @@ -0,0 +1,22 @@ +import os +from pathlib import Path + +from pip import __version__ +from tests.lib import PipTestEnvironment + + +def test_runner_work_in_environments_with_no_pip( + script: PipTestEnvironment, pip_src: Path +) -> None: + runner = pip_src / "src" / "pip" / "__pip-runner__.py" + + # Ensure there's no pip installed in the environment + script.pip("uninstall", "pip", "--yes", use_module=True) + # We don't use script.pip to check here, as when testing a + # zipapp, script.pip will run pip from the zipapp. + script.run("python", "-c", "import pip", expect_error=True) + + # The runner script should still invoke a usable pip + result = script.run("python", os.fspath(runner), "--version") + + assert __version__ in result.stdout |