diff options
-rwxr-xr-x | Lib/pydoc.py | 2 | ||||
-rw-r--r-- | Lib/test/test_pydoc.py | 8 | ||||
-rw-r--r-- | Misc/NEWS | 2 |
3 files changed, 11 insertions, 1 deletions
diff --git a/Lib/pydoc.py b/Lib/pydoc.py index faaa859..0c7b60d 100755 --- a/Lib/pydoc.py +++ b/Lib/pydoc.py @@ -1590,7 +1590,7 @@ def resolve(thing, forceload=0): """Given an object or a path to an object, get the object and its name.""" if isinstance(thing, str): object = locate(thing, forceload) - if not object: + if object is None: raise ImportError('no Python documentation found for %r' % thing) return object, thing else: diff --git a/Lib/test/test_pydoc.py b/Lib/test/test_pydoc.py index 83f2ec9..0e990b6 100644 --- a/Lib/test/test_pydoc.py +++ b/Lib/test/test_pydoc.py @@ -1029,6 +1029,14 @@ class PydocWithMetaClasses(unittest.TestCase): print_diffs(expected_text, result) self.fail("outputs are not equal, see diff above") + def test_resolve_false(self): + # Issue #23008: pydoc enum.{,Int}Enum failed + # because bool(enum.Enum) is False. + with captured_stdout() as help_io: + pydoc.help('enum.Enum') + helptext = help_io.getvalue() + self.assertIn('class Enum', helptext) + @reap_threads def test_main(): @@ -31,6 +31,8 @@ Core and Builtins Library ------- +- Issue #23008: Fixed resolving attributes with boolean value is False in pydoc. + - Fix asyncio issue 235: LifoQueue and PriorityQueue's put didn't increment unfinished tasks (this bug was introduced in 3.4.3 when JoinableQueue was merged with Queue). |