summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorÉric Araujo <merwok@netwok.org>2011-08-24 00:15:25 (GMT)
committerÉric Araujo <merwok@netwok.org>2011-08-24 00:15:25 (GMT)
commite049f470cd98a2304c7552939d3606344ab8302a (patch)
tree1a470ac9e29b185ddde5434fa34d2233a8ae4561
parent09ab4f86e8f7239da4e833589855105ef4f05713 (diff)
downloadcpython-e049f470cd98a2304c7552939d3606344ab8302a.zip
cpython-e049f470cd98a2304c7552939d3606344ab8302a.tar.gz
cpython-e049f470cd98a2304c7552939d3606344ab8302a.tar.bz2
Fix test_packaging on Windows (#12678).
See the distutils commit message for more detail.
-rw-r--r--Lib/packaging/tests/support.py4
-rw-r--r--Lib/packaging/tests/test_command_install_dist.py16
2 files changed, 16 insertions, 4 deletions
diff --git a/Lib/packaging/tests/support.py b/Lib/packaging/tests/support.py
index 0513eaf..df6195a 100644
--- a/Lib/packaging/tests/support.py
+++ b/Lib/packaging/tests/support.py
@@ -323,8 +323,8 @@ def fixup_build_ext(cmd):
support.fixup_build_ext(cmd)
cmd.ensure_finalized()
"""
- if os.name == "nt":
- cmd.debug = sys.executable.endswith("_d.exe")
+ if os.name == 'nt':
+ cmd.debug = sys.executable.endswith('_d.exe')
elif sysconfig.get_config_var('Py_ENABLE_SHARED'):
# To further add to the shared builds fun on Unix, we can't just add
# library_dirs to the Extension() instance because that doesn't get
diff --git a/Lib/packaging/tests/test_command_install_dist.py b/Lib/packaging/tests/test_command_install_dist.py
index d27e597..61270af 100644
--- a/Lib/packaging/tests/test_command_install_dist.py
+++ b/Lib/packaging/tests/test_command_install_dist.py
@@ -5,6 +5,7 @@ import sys
from sysconfig import (get_scheme_names, get_config_vars,
_SCHEMES, get_config_var, get_path)
+from packaging.command.build_ext import build_ext
from packaging.command.install_dist import install_dist
from packaging.compiler.extension import Extension
from packaging.dist import Distribution
@@ -16,6 +17,13 @@ from packaging.tests import unittest, support
_CONFIG_VARS = get_config_vars()
+def _make_ext_name(modname):
+ if os.name == 'nt':
+ if sys.executable.endswith('_d.exe'):
+ modname += '_d'
+ return modname + get_config_var('SO')
+
+
class InstallTestCase(support.TempdirManager,
support.LoggingCatcher,
unittest.TestCase):
@@ -204,10 +212,14 @@ class InstallTestCase(support.TempdirManager,
Extension('xx', ['xxmodule.c'])])
os.chdir(project_dir)
support.copy_xxmodule_c(project_dir)
- support.fixup_build_ext(dist.get_command_obj('build_ext'))
+
+ buildextcmd = build_ext(dist)
+ support.fixup_build_ext(buildextcmd)
+ buildextcmd.ensure_finalized()
cmd = install_dist(dist)
dist.command_obj['install_dist'] = cmd
+ dist.command_obj['build_ext'] = buildextcmd
cmd.root = install_dir
cmd.record = os.path.join(project_dir, 'filelist')
cmd.ensure_finalized()
@@ -217,7 +229,7 @@ class InstallTestCase(support.TempdirManager,
content = f.read()
found = [os.path.basename(line) for line in content.splitlines()]
- expected = ['xx%s' % get_config_var('SO'),
+ expected = [_make_ext_name('xx'),
'METADATA', 'INSTALLER', 'REQUESTED', 'RECORD']
self.assertEqual(found, expected)