[Python-checkins] [3.11] gh-108303: Add Lib/test/test_cppext/ sub-directory (#108325) (#108336)

vstinner webhook-mailer at python.org
Tue Aug 22 23:11:57 EDT 2023


https://github.com/python/cpython/commit/a15396146f8b4f7196e858eba577730f66ac3fb6
commit: a15396146f8b4f7196e858eba577730f66ac3fb6
branch: 3.11
author: Victor Stinner <vstinner at python.org>
committer: vstinner <vstinner at python.org>
date: 2023-08-23T05:11:53+02:00
summary:

[3.11] gh-108303: Add Lib/test/test_cppext/ sub-directory (#108325) (#108336)

gh-108303: Add Lib/test/test_cppext/ sub-directory (#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 21dda09600848ac280481f7c64f8d9516dc69bb2)

files:
A Lib/test/test_cppext/__init__.py
A Lib/test/test_cppext/extension.cpp
A Lib/test/test_cppext/setup.py
D Lib/test/_testcppext.cpp
D Lib/test/setup_testcppext.py
D Lib/test/test_cppext.py
M Makefile.pre.in

diff --git a/Lib/test/test_cppext.py b/Lib/test/test_cppext/__init__.py
similarity index 95%
rename from Lib/test/test_cppext.py
rename to Lib/test/test_cppext/__init__.py
index 465894d24e7df..4ce29b7ff2c23 100644
--- a/Lib/test/test_cppext.py
+++ b/Lib/test/test_cppext/__init__.py
@@ -10,9 +10,7 @@
 
 
 MS_WINDOWS = (sys.platform == 'win32')
-
-
-SETUP_TESTCPPEXT = support.findfile('setup_testcppext.py')
+SETUP = os.path.join(os.path.dirname(__file__), 'setup.py')
 
 
 @support.requires_subprocess()
@@ -74,14 +72,14 @@ def run_cmd(operation, cmd):
 
         # Build the C++ extension
         cmd = [python, '-X', 'dev',
-               SETUP_TESTCPPEXT, 'build_ext', '--verbose']
+               SETUP, 'build_ext', '--verbose']
         if std_cpp03:
             cmd.append('-std=c++03')
         run_cmd('Build', cmd)
 
         # Install the C++ extension
         cmd = [python, '-X', 'dev',
-               SETUP_TESTCPPEXT, 'install']
+               SETUP, 'install']
         run_cmd('Install', cmd)
 
         # Do a reference run. Until we test that running python
diff --git a/Lib/test/_testcppext.cpp b/Lib/test/test_cppext/extension.cpp
similarity index 99%
rename from Lib/test/_testcppext.cpp
rename to Lib/test/test_cppext/extension.cpp
index 0e381a78c5cee..58d18ea675933 100644
--- a/Lib/test/_testcppext.cpp
+++ b/Lib/test/test_cppext/extension.cpp
@@ -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
diff --git a/Lib/test/setup_testcppext.py b/Lib/test/test_cppext/setup.py
similarity index 93%
rename from Lib/test/setup_testcppext.py
rename to Lib/test/test_cppext/setup.py
index c6b68104d1333..dac3a96609ebc 100644
--- a/Lib/test/setup_testcppext.py
+++ b/Lib/test/test_cppext/setup.py
@@ -1,7 +1,7 @@
 # gh-91321: Build a basic C++ test extension to check that the Python C API is
 # compatible with C++ and does not emit C++ compiler warnings.
+import os.path
 import sys
-from test import support
 
 from setuptools import setup, Extension
 
@@ -9,7 +9,7 @@
 MS_WINDOWS = (sys.platform == 'win32')
 
 
-SOURCE = support.findfile('_testcppext.cpp')
+SOURCE = os.path.join(os.path.dirname(__file__), 'extension.cpp')
 if not MS_WINDOWS:
     # C++ compiler flags for GCC and clang
     CPPFLAGS = [
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 6405d06afe14e..884bea1841c23 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1959,6 +1959,7 @@ TESTSUBDIRS=	ctypes/test \
 		test/support \
 		test/test_asyncio \
 		test/test_capi \
+		test/test_cppext \
 		test/test_email \
 		test/test_email/data \
 		test/test_import \



More information about the Python-checkins mailing list