1
0
forked from VimPlug/jedi

Merge branch 'linter' of github.com:davidhalter/jedi into linter

This commit is contained in:
Dave Halter
2016-01-07 12:30:45 +01:00
2 changed files with 22 additions and 1 deletions

View File

@@ -312,7 +312,8 @@ class Evaluator(object):
self.eval_element(element.children[-1])) self.eval_element(element.children[-1]))
elif element.type == 'operator': elif element.type == 'operator':
# Must be an ellipsis, other operators are not evaluated. # Must be an ellipsis, other operators are not evaluated.
types = set() # Ignore for now. assert element.value == '...'
types = set([compiled.create(self, Ellipsis)])
elif element.type == 'dotted_name': elif element.type == 'dotted_name':
types = self._eval_atom(element.children[0]) types = self._eval_atom(element.children[0])
for next_name in element.children[2::2]: for next_name in element.children[2::2]:

View File

@@ -0,0 +1,20 @@
from jedi.parser import load_grammar, Parser
from jedi.evaluate import Evaluator
from jedi.evaluate.compiled import CompiledObject
import pytest
@pytest.mark.skipif('sys.version_info[0] < 3') # Ellipsis does not exists in 2
@pytest.mark.parametrize('source', [
'1 == 1',
'1.0 == 1',
'... == ...'
])
def test_equals(source):
evaluator = Evaluator(load_grammar())
node = Parser(load_grammar(), source, 'eval_input').get_parsed_node()
results = evaluator.eval_element(node)
assert len(results) == 1
first = results.pop()
assert isinstance(first, CompiledObject) and first.obj is True