From 747ada18167ba19806fb34903eb31c22f3fa4910 Mon Sep 17 00:00:00 2001 From: Takafumi Arakaki Date: Sun, 2 Dec 2012 20:24:42 +0100 Subject: [PATCH 1/3] Add TestFeature.test_full_name_builtin (failing) --- test/regression.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/regression.py b/test/regression.py index 52a70209..58bfe9be 100755 --- a/test/regression.py +++ b/test/regression.py @@ -234,6 +234,9 @@ class TestFeature(Base): assert self.complete('import os; os.path.join')[0].full_name \ == 'os.path.join' + def test_full_name_builtin(self): + self.assertEqual(self.complete('type')[0].full_name, 'type') + def test_full_name_tuple_mapping(self): s = """ import re From 12afb6dec8d1506921422d63317029b293efcace Mon Sep 17 00:00:00 2001 From: Takafumi Arakaki Date: Sun, 2 Dec 2012 20:28:47 +0100 Subject: [PATCH 2/3] No __builtin__ prefix for BaseOutput.full_name --- jedi/api_classes.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/jedi/api_classes.py b/jedi/api_classes.py index 45e798e6..5d5b7614 100644 --- a/jedi/api_classes.py +++ b/jedi/api_classes.py @@ -16,7 +16,8 @@ class BaseOutput(object): 'os2emxpath': 'os.path', 'macpath': 'os.path', 'genericpath': 'os.path', - '_io': 'io' + '_io': 'io', + '__builtin__': '', } _tuple_mapping = dict((tuple(k.split('.')), v) for (k, v) in { @@ -101,7 +102,7 @@ class BaseOutput(object): if tuple(path[:len(key)]) == key: path = [repl] + path[len(key):] - return '.'.join(path) + return '.'.join(path if path[0] else path[1:]) def __repr__(self): return "<%s %s>" % (type(self).__name__, self.description) From d03f8daa52970690ae1278b5ca4a9bc3582937e0 Mon Sep 17 00:00:00 2001 From: Takafumi Arakaki Date: Sun, 2 Dec 2012 20:40:18 +0100 Subject: [PATCH 3/3] Fix for Python 3.x: its "builtin" in 3.x --- jedi/api_classes.py | 1 + 1 file changed, 1 insertion(+) diff --git a/jedi/api_classes.py b/jedi/api_classes.py index 5d5b7614..93fde646 100644 --- a/jedi/api_classes.py +++ b/jedi/api_classes.py @@ -18,6 +18,7 @@ class BaseOutput(object): 'genericpath': 'os.path', '_io': 'io', '__builtin__': '', + 'builtins': '', } _tuple_mapping = dict((tuple(k.split('.')), v) for (k, v) in {