summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArtem Mukhin <artem.m.mukhin@gmail.com>2023-06-01 09:39:59 (GMT)
committerGitHub <noreply@github.com>2023-06-01 09:39:59 (GMT)
commit85b0b0cd947c5218260fb2bc2014c8c8de172d33 (patch)
tree97b52a99c285bbda6a91e21ac7211ad820b91b38
parent27f9491c60606460209c109fc8ad8a6dcfd02f79 (diff)
downloadcpython-85b0b0cd947c5218260fb2bc2014c8c8de172d33.zip
cpython-85b0b0cd947c5218260fb2bc2014c8c8de172d33.tar.gz
cpython-85b0b0cd947c5218260fb2bc2014c8c8de172d33.tar.bz2
gh-103224: Use the realpath of the Python executable in `test_venv` (GH-103243)
Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
-rw-r--r--Lib/test/test_venv.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/Lib/test/test_venv.py b/Lib/test/test_venv.py
index 5205604..3d19b2b 100644
--- a/Lib/test/test_venv.py
+++ b/Lib/test/test_venv.py
@@ -208,7 +208,8 @@ class BasicTest(BaseTest):
def test_upgrade_dependencies(self):
builder = venv.EnvBuilder()
bin_path = 'Scripts' if sys.platform == 'win32' else 'bin'
- python_exe = os.path.split(sys.executable)[1]
+ python_exe_realpath = os.path.realpath(sys._base_executable)
+ python_exe = os.path.split(python_exe_realpath)[1]
with tempfile.TemporaryDirectory() as fake_env_dir:
expect_exe = os.path.normcase(
os.path.join(fake_env_dir, bin_path, python_exe)
@@ -551,7 +552,8 @@ class BasicTest(BaseTest):
self.addCleanup(rmtree, non_installed_dir)
bindir = os.path.join(non_installed_dir, self.bindir)
os.mkdir(bindir)
- shutil.copy2(sys.executable, bindir)
+ python_exe_realpath = os.path.realpath(sys._base_executable)
+ shutil.copy2(python_exe_realpath, bindir)
libdir = os.path.join(non_installed_dir, platlibdir, self.lib[1])
os.makedirs(libdir)
landmark = os.path.join(libdir, "os.py")
@@ -595,7 +597,7 @@ class BasicTest(BaseTest):
# libpython.so
ld_library_path = sysconfig.get_config_var("LIBDIR")
if not ld_library_path or sysconfig.is_python_build():
- ld_library_path = os.path.abspath(os.path.dirname(sys.executable))
+ ld_library_path = os.path.abspath(os.path.dirname(python_exe_realpath))
if sys.platform == 'darwin':
ld_library_path_env = "DYLD_LIBRARY_PATH"
else: