diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2017-12-15 12:13:41 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-15 12:13:41 (GMT) |
commit | 3327a2ddf1eaf8cc678f0219ba9edf7d632d1b20 (patch) | |
tree | d5913c7f893cc889b6a0b10142a66a01c709ac74 /Lib/test/test_inspect.py | |
parent | 2e3f5701858d1fc04caedefdd9a8ea43810270d2 (diff) | |
download | cpython-3327a2ddf1eaf8cc678f0219ba9edf7d632d1b20.zip cpython-3327a2ddf1eaf8cc678f0219ba9edf7d632d1b20.tar.gz cpython-3327a2ddf1eaf8cc678f0219ba9edf7d632d1b20.tar.bz2 |
bpo-32265: Classify class and static methods of builtin types. (#4776)
Add types.ClassMethodDescriptorType for unbound class methods.
Diffstat (limited to 'Lib/test/test_inspect.py')
-rw-r--r-- | Lib/test/test_inspect.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py index 5b5bc65..e8eddbe 100644 --- a/Lib/test/test_inspect.py +++ b/Lib/test/test_inspect.py @@ -858,7 +858,8 @@ class TestClassesAndFunctions(unittest.TestCase): attrs = attrs_wo_objs(A) - self.assertIn(('__new__', 'method', object), attrs, 'missing __new__') + self.assertIn(('__new__', 'static method', object), attrs, + 'missing __new__') self.assertIn(('__init__', 'method', object), attrs, 'missing __init__') self.assertIn(('s', 'static method', A), attrs, 'missing static method') @@ -923,6 +924,18 @@ class TestClassesAndFunctions(unittest.TestCase): if isinstance(builtin, type): inspect.classify_class_attrs(builtin) + attrs = attrs_wo_objs(bool) + self.assertIn(('__new__', 'static method', bool), attrs, + 'missing __new__') + self.assertIn(('from_bytes', 'class method', int), attrs, + 'missing class method') + self.assertIn(('to_bytes', 'method', int), attrs, + 'missing plain method') + self.assertIn(('__add__', 'method', int), attrs, + 'missing plain method') + self.assertIn(('__and__', 'method', bool), attrs, + 'missing plain method') + def test_classify_DynamicClassAttribute(self): class Meta(type): def __getattr__(self, name): |