diff options
Diffstat (limited to 'Lib/test/test_inspect.py')
-rw-r--r-- | Lib/test/test_inspect.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py index 6c9f529778..7148dfa0ba 100644 --- a/Lib/test/test_inspect.py +++ b/Lib/test/test_inspect.py @@ -3153,14 +3153,21 @@ class TestSignatureObject(unittest.TestCase): class MySignature(inspect.Signature): pass def foo(a, *, b:1): pass foo_sig = MySignature.from_callable(foo) - self.assertTrue(isinstance(foo_sig, MySignature)) + self.assertIsInstance(foo_sig, MySignature) + + def test_signature_from_callable_class(self): + # A regression test for a class inheriting its signature from `object`. + class MySignature(inspect.Signature): pass + class foo: pass + foo_sig = MySignature.from_callable(foo) + self.assertIsInstance(foo_sig, MySignature) @unittest.skipIf(MISSING_C_DOCSTRINGS, "Signature information for builtins requires docstrings") def test_signature_from_callable_builtin_obj(self): class MySignature(inspect.Signature): pass sig = MySignature.from_callable(_pickle.Pickler) - self.assertTrue(isinstance(sig, MySignature)) + self.assertIsInstance(sig, MySignature) def test_signature_definition_order_preserved_on_kwonly(self): for fn in signatures_with_lexicographic_keyword_only_parameters(): |