Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-118351: Adopt support.TEST_MODULES_ENABLED for Windows build #118354

Merged
merged 3 commits into from Apr 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 3 additions & 2 deletions Lib/test/support/__init__.py
Expand Up @@ -1181,8 +1181,9 @@ def requires_limited_api(test):
return test


TEST_MODULES_ENABLED = sysconfig.get_config_var('TEST_MODULES') == 'yes'

# Windows build doesn't support --disable-test-modules feature, so there's no
# 'TEST_MODULES' var in config
TEST_MODULES_ENABLED = (sysconfig.get_config_var('TEST_MODULES') or 'yes') == 'yes'

def requires_specialization(test):
return unittest.skipUnless(
Expand Down
6 changes: 4 additions & 2 deletions Lib/test/test_capi/test_run.py
Expand Up @@ -2,7 +2,7 @@
import unittest
from collections import UserDict
from test.support import import_helper
from test.support.os_helper import unlink, TESTFN, TESTFN_UNDECODABLE
from test.support.os_helper import unlink, TESTFN, TESTFN_ASCII, TESTFN_UNDECODABLE

NULL = None
_testcapi = import_helper.import_module('_testcapi')
Expand Down Expand Up @@ -35,6 +35,7 @@ class CAPITest(unittest.TestCase):

def test_run_stringflags(self):
# Test PyRun_StringFlags().
# XXX: fopen() uses different path encoding than Python on Windows.
def run(s, *args):
return _testcapi.run_stringflags(s, Py_file_input, *args)
source = b'a\n'
Expand Down Expand Up @@ -63,7 +64,7 @@ def run(s, *args):

def test_run_fileexflags(self):
# Test PyRun_FileExFlags().
filename = os.fsencode(TESTFN)
filename = os.fsencode(TESTFN if os.name != 'nt' else TESTFN_ASCII)
with open(filename, 'wb') as fp:
fp.write(b'a\n')
self.addCleanup(unlink, filename)
Expand All @@ -89,6 +90,7 @@ def run(*args):
# CRASHES run(UserDict(), dict(a=1))

@unittest.skipUnless(TESTFN_UNDECODABLE, 'only works if there are undecodable paths')
@unittest.skipIf(os.name == 'nt', 'does not work on Windows')
def test_run_fileexflags_with_undecodable_filename(self):
run = _testcapi.run_fileexflags
try:
Expand Down