]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.14] gh-145557: Check ctypes is available in test_external_inspection (GH-145558...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Thu, 5 Mar 2026 19:31:06 +0000 (20:31 +0100)
committerGitHub <noreply@github.com>
Thu, 5 Mar 2026 19:31:06 +0000 (19:31 +0000)
gh-145557: Check ctypes is available in test_external_inspection (GH-145558)

Currently TestGetStackTrace.test_self_trace_after_ctypes_import() will fail if
the _ctypes extension is not built.  Make it match test_ctypes by skipping
the test in that case.
(cherry picked from commit 7232883adfc28f94a62d2e79c897db59711702d7)

Co-authored-by: Alex Malyshev <lex.malyshev@gmail.com>
Lib/test/test_external_inspection.py

index dddb3839af4f073b4fb241a9d072a153161d39b9..08779bdb008139756f51976bab94594fbc0fb00b 100644 (file)
@@ -14,6 +14,7 @@ from test.support import (
     busy_retry,
     requires_gil_enabled,
 )
+from test.support.import_helper import import_module
 from test.support.script_helper import make_script
 from test.support.socket_helper import find_unused_port
 
@@ -163,6 +164,10 @@ class TestGetStackTrace(unittest.TestCase):
         The remote debugging code must skip these uninitialized duplicate
         mappings and find the real PyRuntime. See gh-144563.
         """
+
+        # Skip the test if the _ctypes module is missing.
+        import_module("_ctypes")
+
         # Run the test in a subprocess to avoid side effects
         script = textwrap.dedent("""\
             import os