Skip to content

Commit b5f7111

Browse files
authored
gh-94808: add tests covering PyEval_GetFuncDesc function (GH-98300)
1 parent 12078e7 commit b5f7111

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

Lib/test/test_capi.py

+15
Original file line numberDiff line numberDiff line change
@@ -907,6 +907,21 @@ def method_example(self): ...
907907
self.assertEqual(_testcapi.eval_get_func_name(sum), "sum") # c function
908908
self.assertEqual(_testcapi.eval_get_func_name(A), "type")
909909

910+
def test_eval_get_func_desc(self):
911+
def function_example(): ...
912+
913+
class A:
914+
def method_example(self): ...
915+
916+
self.assertEqual(_testcapi.eval_get_func_desc(function_example),
917+
"()")
918+
self.assertEqual(_testcapi.eval_get_func_desc(A.method_example),
919+
"()")
920+
self.assertEqual(_testcapi.eval_get_func_desc(A().method_example),
921+
"()")
922+
self.assertEqual(_testcapi.eval_get_func_desc(sum), "()") # c function
923+
self.assertEqual(_testcapi.eval_get_func_desc(A), " object")
924+
910925
def test_function_get_code(self):
911926
import types
912927

Modules/_testcapimodule.c

+7
Original file line numberDiff line numberDiff line change
@@ -5579,6 +5579,12 @@ eval_get_func_name(PyObject *self, PyObject *func)
55795579
return PyUnicode_FromString(PyEval_GetFuncName(func));
55805580
}
55815581

5582+
static PyObject *
5583+
eval_get_func_desc(PyObject *self, PyObject *func)
5584+
{
5585+
return PyUnicode_FromString(PyEval_GetFuncDesc(func));
5586+
}
5587+
55825588
static PyObject *
55835589
get_feature_macros(PyObject *self, PyObject *Py_UNUSED(args))
55845590
{
@@ -6226,6 +6232,7 @@ static PyMethodDef TestMethods[] = {
62266232
{"frame_getbuiltins", frame_getbuiltins, METH_O, NULL},
62276233
{"frame_getlasti", frame_getlasti, METH_O, NULL},
62286234
{"eval_get_func_name", eval_get_func_name, METH_O, NULL},
6235+
{"eval_get_func_desc", eval_get_func_desc, METH_O, NULL},
62296236
{"get_feature_macros", get_feature_macros, METH_NOARGS, NULL},
62306237
{"test_code_api", test_code_api, METH_NOARGS, NULL},
62316238
{"settrace_to_record", settrace_to_record, METH_O, NULL},

0 commit comments

Comments
 (0)