Fixed #20: I can parse simple concepts
This commit is contained in:
+39
-2
@@ -2,7 +2,8 @@ import pytest
|
||||
|
||||
from common.global_symbols import NotInit
|
||||
from core.concept import Concept, ConceptDefaultProps, ConceptMetadata, DefinitionType
|
||||
from helpers import GetNextId, get_concept, get_concepts, get_metadata, get_metadatas, get_evaluated_concept
|
||||
from helpers import GetNextId, _mt, _ut, get_concept, get_concepts, get_evaluated_concept, get_from, get_metadata, \
|
||||
get_metadatas
|
||||
|
||||
|
||||
def test_i_can_get_default_value_when_get_metadata():
|
||||
@@ -233,7 +234,7 @@ def test_i_can_get_multiple_concepts_when_same_name(sheerka, context):
|
||||
assert sheerka.isinstance(one_int, "one")
|
||||
|
||||
|
||||
def test_i_can_create_test_concept(sheerka, context):
|
||||
def test_i_can_create_test_concept():
|
||||
concept = get_concept("one", body="'one'")
|
||||
|
||||
test_concept = get_evaluated_concept(concept, body='hello', a="value for a")
|
||||
@@ -241,3 +242,39 @@ def test_i_can_create_test_concept(sheerka, context):
|
||||
assert test_concept.get_metadata() == concept.get_metadata()
|
||||
assert test_concept.get_value(ConceptDefaultProps.BODY) == "hello"
|
||||
assert test_concept.get_value("a") == "value for a"
|
||||
|
||||
|
||||
def test_i_can_dummy_evaluate_concept():
|
||||
concept = get_concept("one", body="'one'", where="True", pre="False", ret="1", post="1.0")
|
||||
|
||||
evaluated = get_evaluated_concept(concept)
|
||||
assert evaluated.get_value(ConceptDefaultProps.WHERE) is True
|
||||
assert evaluated.get_value(ConceptDefaultProps.PRE) is False
|
||||
assert evaluated.get_value(ConceptDefaultProps.BODY) == "one"
|
||||
assert evaluated.get_value(ConceptDefaultProps.RET) == 1
|
||||
assert evaluated.get_value(ConceptDefaultProps.POST) == 1.0
|
||||
|
||||
concept = get_concept("one", body='"one"', ret="'a value'")
|
||||
evaluated = get_evaluated_concept(concept, ret='forced value')
|
||||
assert evaluated.get_value(ConceptDefaultProps.WHERE) == NotInit
|
||||
assert evaluated.get_value(ConceptDefaultProps.PRE) == NotInit
|
||||
assert evaluated.get_value(ConceptDefaultProps.BODY) == "one"
|
||||
assert evaluated.get_value(ConceptDefaultProps.RET) == "forced value"
|
||||
assert evaluated.get_value(ConceptDefaultProps.POST) == NotInit
|
||||
|
||||
|
||||
def test_i_can_get_from():
|
||||
res = get_from(_mt("c:i am a concept#1001:"))
|
||||
assert res == [_mt("1001", 0, 6)]
|
||||
|
||||
res = get_from(_ut("some unrecognized stuff"))
|
||||
assert res == [_ut("some unrecognized stuff", 0, 4)]
|
||||
|
||||
res = get_from(_mt("c:i am a concept#1001:"), _ut("some unrecognized stuff"))
|
||||
assert res == [_mt("1001", 0, 6), _ut("some unrecognized stuff", 7, 11)]
|
||||
|
||||
res = get_from(_mt("c:i am a concept#1001:"), _ut("some unrecognized stuff"), parser="other")
|
||||
assert res == [_mt("1001", 0, 6, parser="other"), _ut("some unrecognized stuff", 7, 11)]
|
||||
|
||||
res = get_from(_mt("c:i am a concept#1001:"), _mt("c:#1001:"))
|
||||
assert res == [_mt("1001", 0, 6), _mt("1001", 7, 13)]
|
||||
|
||||
Reference in New Issue
Block a user