diff --git a/jedi/api/__init__.py b/jedi/api/__init__.py index 7942f6b4..0008f6ff 100644 --- a/jedi/api/__init__.py +++ b/jedi/api/__init__.py @@ -393,7 +393,7 @@ class Script: quite hard to do for Jedi, if it is too complicated, Jedi will stop searching. - :param include_builtins: Default ``True``. If ``False``, checks if a reference + :param include_builtins: Default ``True``. If ``False``, checks if a definition is a builtin (e.g. ``sys``) and in that case does not return it. :param scope: Default ``'project'``. If ``'file'``, include references in the current module only. diff --git a/test/test_api/test_usages.py b/test/test_api/test_usages.py index ed789c66..93edd34d 100644 --- a/test/test_api/test_usages.py +++ b/test/test_api/test_usages.py @@ -10,16 +10,15 @@ def test_import_references(Script): def test_exclude_builtin_modules(Script): def get(include): - from jedi.api.project import Project - script = Script(source, project=Project('', sys_path=[], smart_sys_path=False)) - references = script.get_references(column=8, include_builtins=include) + references = Script(source).get_references(include_builtins=include) return [(d.line, d.column) for d in references] - source = '''import sys\nprint(sys.path)''' + source = '''import sys\nsys.setprofile''' places = get(include=True) - assert len(places) > 2 # Includes stubs + assert len(places) >= 3 # Includes stubs, the reference itself and the builtin places = get(include=False) - assert places == [(1, 7), (2, 6)] + # Just the reference + assert places == [(2, 4)] @pytest.mark.parametrize('code, places', [