[3.12] gh-108303: Add Lib/test/test_cppext/ sub-directory (GH-108325) (#108328)

gh-108303: Add Lib/test/test_cppext/ sub-directory (GH-108325)

* Move test_cppext to its own directory
* Rename setup_testcppext.py to setup.py
* Rename _testcppext.cpp to extension.cpp
* The source (extension.cpp) is now also copied by the test.
(cherry picked from commit 21dda09600)

Co-authored-by: Victor Stinner <vstinner@python.org>
This commit is contained in:
Miss Islington (bot) 2023-08-22 13:06:33 -07:00 committed by GitHub
parent ca47a2183a
commit b539dd3073
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 8 additions and 6 deletions

View file

@ -11,9 +11,8 @@ from test.support import os_helper
MS_WINDOWS = (sys.platform == 'win32')
SETUP_TESTCPPEXT = support.findfile('setup_testcppext.py')
SOURCE = os.path.join(os.path.dirname(__file__), 'extension.cpp')
SETUP = os.path.join(os.path.dirname(__file__), 'setup.py')
@support.requires_subprocess()
@ -42,7 +41,8 @@ class TestCPPExt(unittest.TestCase):
def _check_build(self, std_cpp03, extension_name, python_exe):
pkg_dir = 'pkg'
os.mkdir(pkg_dir)
shutil.copy(SETUP_TESTCPPEXT, os.path.join(pkg_dir, "setup.py"))
shutil.copy(SETUP, os.path.join(pkg_dir, os.path.basename(SETUP)))
shutil.copy(SOURCE, os.path.join(pkg_dir, os.path.basename(SOURCE)))
def run_cmd(operation, cmd):
env = os.environ.copy()

View file

@ -1,5 +1,7 @@
// gh-91321: Very basic C++ test extension to check that the Python C API is
// compatible with C++ and does not emit C++ compiler warnings.
//
// The code is only built, not executed.
// Always enable assertions
#undef NDEBUG

View file

@ -2,7 +2,6 @@
# compatible with C++ and does not emit C++ compiler warnings.
import os
import sys
from test import support
from setuptools import setup, Extension
@ -10,7 +9,7 @@ from setuptools import setup, Extension
MS_WINDOWS = (sys.platform == 'win32')
SOURCE = support.findfile('_testcppext.cpp')
SOURCE = 'extension.cpp'
if not MS_WINDOWS:
# C++ compiler flags for GCC and clang
CPPFLAGS = [

View file

@ -2132,6 +2132,7 @@ TESTSUBDIRS= idlelib/idle_test \
test/support/_hypothesis_stubs \
test/test_asyncio \
test/test_capi \
test/test_cppext \
test/test_ctypes \
test/test_email \
test/test_email/data \