GH-89858: Fix test_embed for out-of-tree builds (GH-93465)

This commit is contained in:
Kumar Aditya 2022-06-17 21:54:17 +05:30 committed by GitHub
parent 11190c4ad0
commit 96464e5401
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 5 deletions

View file

@ -67,18 +67,16 @@ def setUp(self):
ext = ("_d" if debug_build(sys.executable) else "") + ".exe"
exename += ext
exepath = builddir
expecteddir = os.path.join(support.REPO_ROOT, builddir)
else:
exepath = os.path.join(builddir, 'Programs')
expecteddir = os.path.join(support.REPO_ROOT, 'Programs')
self.test_exe = exe = os.path.join(exepath, exename)
if exepath != expecteddir or not os.path.exists(exe):
if not os.path.exists(exe):
self.skipTest("%r doesn't exist" % exe)
# This is needed otherwise we get a fatal error:
# "Py_Initialize: Unable to get the locale encoding
# LookupError: no codec search functions registered: can't find encoding"
self.oldcwd = os.getcwd()
os.chdir(support.REPO_ROOT)
os.chdir(builddir)
def tearDown(self):
os.chdir(self.oldcwd)
@ -1375,10 +1373,11 @@ def test_init_pybuilddir(self):
with self.tmpdir_with_python() as tmpdir:
# pybuilddir.txt is a sub-directory relative to the current
# directory (tmpdir)
vpath = sysconfig.get_config_var("VPATH") or ''
subdir = 'libdir'
libdir = os.path.join(tmpdir, subdir)
# The stdlib dir is dirname(executable) + VPATH + 'Lib'
stdlibdir = os.path.join(tmpdir, 'Lib')
stdlibdir = os.path.normpath(os.path.join(tmpdir, vpath, 'Lib'))
os.mkdir(libdir)
filename = os.path.join(tmpdir, 'pybuilddir.txt')

View file

@ -0,0 +1 @@
Fix ``test_embed`` for out-of-tree builds. Patch by Kumar Aditya.