cpython/Modules/_testcapi
Victor Stinner 828451dfde
gh-111545: Add Py_HashPointer() function (#112096)
* Implement _Py_HashPointerRaw() as a static inline function.
* Add Py_HashPointer() tests to test_capi.test_hash.
* Keep _Py_HashPointer() function as an alias to Py_HashPointer().
2023-12-06 15:09:22 +01:00
..
clinic gh-111089: Revert PyUnicode_AsUTF8() changes (#111833) 2023-11-07 22:36:13 +00:00
abstract.c Add more C API tests (GH-112522) 2023-11-29 17:37:05 +02:00
buffer.c
bytearray.c
bytes.c
code.c
codec.c
complex.c gh-109802: Increase test coverage for complexobject.c (GH-112452) 2023-11-28 10:18:33 +02:00
datetime.c
dict.c gh-111262: Add PyDict_Pop() function (#112028) 2023-11-14 12:51:00 +00:00
docstring.c
exceptions.c
file.c
float.c
gc.c
getargs.c gh-112438: Fix support of format units with the "e" prefix in nested tuples in PyArg_Parse (gh-112439) 2023-11-27 18:32:55 +01:00
hash.c gh-111545: Add Py_HashPointer() function (#112096) 2023-12-06 15:09:22 +01:00
heaptype.c
heaptype_relative.c gh-111863: Rename Py_NOGIL to Py_GIL_DISABLED (#111864) 2023-11-20 15:52:00 +02:00
immortal.c
list.c gh-111138: Add PyList_Extend() and PyList_Clear() functions (#111862) 2023-11-13 16:14:56 +00:00
long.c
mem.c
numbers.c
parts.h gh-111545: Test PyHash_GetFuncDef() function (#112098) 2023-11-15 03:41:29 +01:00
pyatomic.c
pyos.c
README.txt
set.c
structmember.c
sys.c
testcapi_long.h
tuple.c
unicode.c
util.h
vectorcall.c
vectorcall_limited.c gh-111863: Rename Py_NOGIL to Py_GIL_DISABLED (#111864) 2023-11-20 15:52:00 +02:00
watchers.c

Tests in this directory are compiled into the _testcapi extension.
The main file for the extension is Modules/_testcapimodule.c, which
calls `_PyTestCapi_Init_*` from these functions.

General guideline when writing test code for C API.
* Use Argument Clinic to minimise the amount of boilerplate code.
* Add a newline between the argument spec and the docstring.
* If a test description is needed, make sure the added docstring clearly and succinctly describes purpose of the function.
* DRY, use the clone feature of Argument Clinic.
* Try to avoid adding new interned strings; reuse existing parameter names if possible. Use the `as` feature of Argument Clinic to override the C variable name, if needed.