Finally make it possible to use auto_import_modules for packages

This means that you can now write 'from gi.repository import Gtk' and Gtk completions work.

It also means that other libraries could be used like that for speed or other reasons.

Fixes #531
This commit is contained in:
Dave Halter
2018-07-03 00:58:24 +02:00
parent 5b7984c4d4
commit f4aad8bbfe
5 changed files with 33 additions and 6 deletions

View File

@@ -1,8 +1,19 @@
import pytest
from jedi import settings
from jedi.evaluate.compiled import CompiledContextName
def test_base_auto_import_modules(monkeypatch, Script):
@pytest.fixture()
def auto_import_json(monkeypatch):
monkeypatch.setattr(settings, 'auto_import_modules', ['json'])
def test_base_auto_import_modules(auto_import_json, Script):
loads, = Script('import json; json.loads').goto_definitions()
assert isinstance(loads._name, CompiledContextName)
def test_auto_import_modules_imports(auto_import_json, Script):
main, = Script('from json import tool; tool.main').goto_definitions()
assert isinstance(main._name, CompiledContextName)