bpo-35614: Fix pydoc help() on metaclasses (#11357)
This commit is contained in:
parent
1d300ce1d8
commit
b539cef31c
|
@ -1255,7 +1255,7 @@ location listed above.
|
|||
|
||||
# List the built-in subclasses, if any:
|
||||
subclasses = sorted(
|
||||
(str(cls.__name__) for cls in object.__subclasses__()
|
||||
(str(cls.__name__) for cls in type.__subclasses__(object)
|
||||
if not cls.__name__.startswith("_") and cls.__module__ == "builtins"),
|
||||
key=str.lower
|
||||
)
|
||||
|
|
|
@ -636,6 +636,17 @@ class PydocDocTest(unittest.TestCase):
|
|||
# Testing that the subclasses section does not appear
|
||||
self.assertNotIn('Built-in subclasses', text)
|
||||
|
||||
def test_builtin_on_metaclasses(self):
|
||||
"""Tests help on metaclasses.
|
||||
|
||||
When running help() on a metaclasses such as type, it
|
||||
should not contain any "Built-in subclasses" section.
|
||||
"""
|
||||
doc = pydoc.TextDoc()
|
||||
text = doc.docclass(type)
|
||||
# Testing that the subclasses section does not appear
|
||||
self.assertNotIn('Built-in subclasses', text)
|
||||
|
||||
@unittest.skipIf(sys.flags.optimize >= 2,
|
||||
'Docstrings are omitted with -O2 and above')
|
||||
@unittest.skipIf(hasattr(sys, 'gettrace') and sys.gettrace(),
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Fixed help() on metaclasses. Patch by Sanyam Khurana.
|
Loading…
Reference in New Issue