mirror of
https://github.com/python/cpython.git
synced 2026-03-05 12:30:50 +00:00
bpo-25094: Fix test_tools.test_sundry() on Windows (GH-8406)
When Python is installed on Windows, python -m test test_tools failed
because it tried to run Tools\scripts\2to3.py which requires an
argument. Skip this script. On other platforms or on Windows but when
run from source code (not installed), the script is called "2to3"
instead of "2to.py" and so was already skipped.
Modify also the unit test to unload all modules which have been
loaded by the test.
(cherry picked from commit 752d4b7531)
Co-authored-by: Victor Stinner <vstinner@redhat.com>
This commit is contained in:
parent
e9e6495eed
commit
1724c0c984
1 changed files with 14 additions and 4 deletions
|
|
@ -25,15 +25,25 @@ class TestSundryScripts(unittest.TestCase):
|
|||
# scripts that use windows-only modules
|
||||
windows_only = ['win_add2path']
|
||||
# blacklisted for other reasons
|
||||
other = ['analyze_dxp']
|
||||
other = ['analyze_dxp', '2to3']
|
||||
|
||||
skiplist = blacklist + whitelist + windows_only + other
|
||||
|
||||
def test_sundry(self):
|
||||
for fn in os.listdir(scriptsdir):
|
||||
name = fn[:-3]
|
||||
if fn.endswith('.py') and name not in self.skiplist:
|
||||
old_modules = support.modules_setup()
|
||||
try:
|
||||
for fn in os.listdir(scriptsdir):
|
||||
if not fn.endswith('.py'):
|
||||
continue
|
||||
|
||||
name = fn[:-3]
|
||||
if name in self.skiplist:
|
||||
continue
|
||||
|
||||
import_tool(name)
|
||||
finally:
|
||||
# Unload all modules loaded in this test
|
||||
support.modules_cleanup(*old_modules)
|
||||
|
||||
@unittest.skipIf(sys.platform != "win32", "Windows-only test")
|
||||
def test_sundry_windows(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue