diff --git a/jedi/inference/names.py b/jedi/inference/names.py index 81be3f96..927c40ce 100644 --- a/jedi/inference/names.py +++ b/jedi/inference/names.py @@ -634,7 +634,7 @@ class StubName(StubNameMixin, TreeNameDefinition): inferred = super(StubName, self).infer() if self.string_name == 'version_info' and self.get_root_context().py__name__() == 'sys': from jedi.inference.gradual.stub_value import VersionInfo - return [VersionInfo(c) for c in inferred] + return ValueSet(VersionInfo(c) for c in inferred) return inferred diff --git a/test/test_api/test_documentation.py b/test/test_api/test_documentation.py index c59bd7f9..ed7de623 100644 --- a/test/test_api/test_documentation.py +++ b/test/test_api/test_documentation.py @@ -75,3 +75,17 @@ def test_attribute_docstrings(goto_or_help, expected_doc, to_execute): d, = goto_or_help(code + to_execute) assert d.docstring() == expected_doc + + +def test_version_info(Script): + """ + Version info is a bit special, because it needs to be fast for some ifs, so + it's a special object that we have to check. + """ + s = Script(dedent("""\ + import sys + + sys.version_info""")) + + c, = s.completions() + assert c.docstring() == 'sys.version_info\n\nVersion information as a named tuple.'