From ca460ac34f6d6d93026a5f6b03b3713f6aed22e8 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Thu, 6 Mar 2014 12:20:11 +0100 Subject: [PATCH] fixed a problem with docstrings that were empty (None), docstrings in Jedi are always strings. --- jedi/evaluate/compiled/__init__.py | 2 +- test/test_evaluate/test_compiled.py | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/jedi/evaluate/compiled/__init__.py b/jedi/evaluate/compiled/__init__.py index 69229ed5..ed196ae7 100644 --- a/jedi/evaluate/compiled/__init__.py +++ b/jedi/evaluate/compiled/__init__.py @@ -26,7 +26,7 @@ class CompiledObject(Base): def __init__(self, obj, parent=None): self.obj = obj self.parent = parent - self.doc = inspect.getdoc(obj) + self.doc = inspect.getdoc(obj) or '' @property def params(self): diff --git a/test/test_evaluate/test_compiled.py b/test/test_evaluate/test_compiled.py index dd1959ba..eb3ad4ed 100644 --- a/test/test_evaluate/test_compiled.py +++ b/test/test_evaluate/test_compiled.py @@ -38,3 +38,12 @@ def test_parse_function_doc_illegal_docstr(): doesn't have a closing bracket. """ assert ('', '') == compiled._parse_function_doc(docstr) + + +def test_doc(): + """ + Even CompiledObject docs always return empty docstrings - not None, that's + just a Jedi API definition. + """ + obj = compiled.CompiledObject(''.__getnewargs__) + assert obj.doc == ''