bpo-40302: Add pycore_byteswap.h header file (GH-19552)
Add a new internal pycore_byteswap.h header file with the following
functions:
* _Py_bswap16()
* _Py_bswap32()
* _Py_bswap64()
Use these functions in _ctypes, sha256 and sha512 modules,
and also use in the UTF-32 encoder.
sha256, sha512 and _ctypes modules are now built with the internal
C API.
diff --git a/Lib/test/test_capi.py b/Lib/test/test_capi.py
index 0243439..f9578d3 100644
--- a/Lib/test/test_capi.py
+++ b/Lib/test/test_capi.py
@@ -24,6 +24,8 @@
# Skip this test if the _testcapi module isn't available.
_testcapi = support.import_module('_testcapi')
+import _testinternalcapi
+
# Were we compiled --with-pydebug or with #define Py_DEBUG?
Py_DEBUG = hasattr(sys, 'gettotalrefcount')
@@ -658,6 +660,12 @@
if name.startswith('test_') and not name.endswith('_code'))
+class Test_testinternalcapi(unittest.TestCase):
+ locals().update((name, getattr(_testinternalcapi, name))
+ for name in dir(_testinternalcapi)
+ if name.startswith('test_'))
+
+
class PyMemDebugTests(unittest.TestCase):
PYTHONMALLOC = 'debug'
# '0x04c06e0' or '04C06E0'