Implemented FunctionParser
This commit is contained in:
@@ -104,6 +104,25 @@ class TestPythonWithConceptsParser(TestUsingMemoryBasedSheerka):
|
||||
assert result.status
|
||||
assert return_value.concepts["__C__foo0et000000__1001__C__"] == foo
|
||||
|
||||
def test_i_can_parse_when_multiple_concepts(self):
|
||||
sheerka, context, foo, bar = self.init_concepts("foo", "bar")
|
||||
input_return_value = ret_val("func(", foo, ", ", bar, ")")
|
||||
|
||||
parser = PythonWithConceptsParser()
|
||||
result = parser.parse(context, input_return_value.body)
|
||||
parser_result = result.value
|
||||
return_value = result.value.value
|
||||
|
||||
assert result.status
|
||||
assert result.who == parser.name
|
||||
assert context.sheerka.isinstance(parser_result, BuiltinConcepts.PARSER_RESULT)
|
||||
assert parser_result.source == "func(foo, bar)"
|
||||
assert isinstance(return_value, PythonNode)
|
||||
assert return_value.source == "func(foo, bar)"
|
||||
assert return_value.get_dump(return_value.ast_) == to_str_ast("func(__C__foo__1001__C__, __C__bar__1002__C__)")
|
||||
assert return_value.concepts["__C__foo__1001__C__"] == foo
|
||||
assert return_value.concepts["__C__bar__1002__C__"] == bar
|
||||
|
||||
def test_python_ids_mappings_are_correct_when_concepts_with_the_same_name(self):
|
||||
context = self.get_context()
|
||||
foo1 = Concept("foo")
|
||||
|
||||
Reference in New Issue
Block a user