Files
jedi/test/test_deprecation.py
2020-03-21 02:42:00 +01:00

49 lines
1.2 KiB
Python

# -*- coding: utf-8 -*-
import warnings
import pytest
from jedi._compatibility import u
@pytest.fixture(autouse=True)
def check_for_warning(recwarn):
warnings.simplefilter("always")
with pytest.warns(DeprecationWarning):
yield
def test_goto_definitions(Script):
int_, = Script('x = 1\nx, y\ny', line=2, column=0).goto_definitions()
assert int_.name == 'int'
def test_completions(Script):
c1, c2 = Script('foobar = 1\nfoobaz= 2\nfoobaz, ffff\nfool = 3', line=3, column=3).completions()
assert c1.name == 'foobar'
assert c2.name == 'foobaz'
def test_goto_assignments(Script):
int_, = Script('x = 1\nx, y\ny', line=2, column=0).goto_assignments()
assert int_.get_line_code() == 'x = 1\n'
def test_usages(Script):
d1, d2 = Script('x = 1\nx, y\ny', line=2, column=0).usages()
assert d1.name == 'x'
assert d1.line == 1
assert d2.name == 'x'
assert d2.line == 2
def test_call_signatures(Script):
d1, = Script('abs(float(\nstr(', line=1, column=4).call_signatures()
assert d1.name == 'abs'
def test_encoding_parameter(Script):
name = u('')
s = Script(name.encode('latin-1'), encoding='latin-1')
assert s._module_node.get_code() == name