[3.11] gh-112001: Fix test_builtins_have_signatures in test_inspect (GH-112002) (GH-112004)

(cherry picked from commit 40752c1c1e)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
This commit is contained in:
Miss Islington (bot) 2023-11-12 13:49:59 +01:00 committed by GitHub
parent 5a6d1dbc10
commit 9536fe1656
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -4285,19 +4285,14 @@ def test_builtins_have_signatures(self):
# These have unrepresentable parameter default values of NULL
needs_null = {"anext"}
no_signature |= needs_null
# These need PEP 457 groups or a signature change to accept None
needs_semantic_update = {"round"}
no_signature |= needs_semantic_update
# These need *args support in Argument Clinic
needs_varargs = {"breakpoint", "min", "max", "print",
"__build_class__"}
needs_varargs = {"breakpoint", "min", "max", "__build_class__"}
no_signature |= needs_varargs
# These simply weren't covered in the initial AC conversion
# for builtin callables
not_converted_yet = {"open", "__import__"}
no_signature |= not_converted_yet
# These builtin types are expected to provide introspection info
types_with_signatures = set()
types_with_signatures = {
'complex', 'enumerate', 'float', 'list', 'memoryview', 'object',
'property', 'reversed', 'tuple',
}
# Check the signatures we expect to be there
ns = vars(builtins)
for name, obj in sorted(ns.items()):
@ -4316,9 +4311,9 @@ def test_builtins_have_signatures(self):
# This ensures this test will start failing as more signatures are
# added, so the affected items can be moved into the scope of the
# regression test above
for name in no_signature:
for name in no_signature - needs_null:
with self.subTest(builtin=name):
self.assertIsNone(obj.__text_signature__)
self.assertIsNone(ns[name].__text_signature__)
def test_python_function_override_signature(self):
def func(*args, **kwargs):