Not initialiazed variables now returns BuiltinConcepts.NOT_INITIALIZED

This commit is contained in:
2020-05-23 10:01:50 +02:00
parent 3ce6ce2a76
commit 32fb0e5398
9 changed files with 25 additions and 22 deletions
+4 -4
View File
@@ -9,7 +9,7 @@ from tests.TestUsingMemoryBasedSheerka import TestUsingMemoryBasedSheerka
class TestSheerkaEvaluateConcept(TestUsingMemoryBasedSheerka):
@pytest.mark.parametrize("body, expected", [
(None, None),
(None, BuiltinConcepts.NOT_INITIALIZED),
("", ""),
("1", 1),
("1+1", 2),
@@ -132,7 +132,7 @@ class TestSheerkaEvaluateConcept(TestUsingMemoryBasedSheerka):
evaluated = sheerka.evaluate_concept(context, concept)
assert evaluated == CB("foo", CB("a", None))
assert evaluated == CB("foo", CB("a", BuiltinConcepts.NOT_INITIALIZED))
assert evaluated.metadata.is_evaluated
assert evaluated.body.metadata.is_evaluated
@@ -176,9 +176,9 @@ class TestSheerkaEvaluateConcept(TestUsingMemoryBasedSheerka):
evaluated = sheerka.evaluate_concept(context, concept_d)
assert evaluated.key == concept_d.key
expected = CB("c", CB("b", CB("a", None)))
expected = CB("c", CB("b", CB("a", BuiltinConcepts.NOT_INITIALIZED)))
assert evaluated.body == expected
assert sheerka.objvalue(evaluated) == CB("a", None)
assert sheerka.objvalue(evaluated) == CB("a", BuiltinConcepts.NOT_INITIALIZED)
assert evaluated.metadata.is_evaluated
def test_i_can_evaluate_concept_when_variables_reference_others_concepts(self):
+2 -2
View File
@@ -186,11 +186,11 @@ class TestSheerkaUsingMemoryBasedSheerka(TestUsingMemoryBasedSheerka):
new = sheerka.new(template.key)
assert not new.metadata.is_evaluated
assert not new.body
assert new.body == BuiltinConcepts.NOT_INITIALIZED
new = sheerka.new((None, template.id))
assert not new.metadata.is_evaluated
assert not new.body
assert new.body == BuiltinConcepts.NOT_INITIALIZED
def test_i_cannot_instantiate_an_unknown_concept(self):
sheerka = self.get_sheerka()
+2 -2
View File
@@ -64,7 +64,7 @@ class TestSheerkaNonRegMemory(TestUsingMemoryBasedSheerka):
# sanity check
evaluated = sheerka.evaluate_concept(self.get_context(eval_body=True), return_value)
assert evaluated == simplec("un", simplec("one", None))
assert evaluated == simplec("un", simplec("one", BuiltinConcepts.NOT_INITIALIZED))
def test_i_can_recognize_concept_with_no_body(self):
sheerka = self.get_sheerka()
@@ -734,7 +734,7 @@ as:
assert len(res) == 1
assert res[0].status
assert sheerka.isinstance(res[0].body, "foobar")
assert res[0].body.body is None
assert res[0].body.body == BuiltinConcepts.NOT_INITIALIZED
res = sheerka.evaluate_user_input("eval foo bar")
assert len(res) == 1
+9 -9
View File
@@ -447,11 +447,11 @@ class TestBnfNodeParser(TestUsingMemoryBasedSheerka):
# explicit validations of the compiled
concept_foo = sequences[0][0].concept
assert concept_foo.body is None
assert concept_foo.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_foo.compiled == {ConceptParts.BODY: DoNotResolve("one two")}
concept_bar = sequences[1][0].concept
assert concept_bar.body is None
assert concept_bar.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_bar.compiled == {
ConceptParts.BODY: concept_foo,
"foo": concept_foo
@@ -473,11 +473,11 @@ class TestBnfNodeParser(TestUsingMemoryBasedSheerka):
# explicit validations of the compiled
concept_foo = sequences[0][0].concept
assert concept_foo.body is None
assert concept_foo.body == BuiltinConcepts.NOT_INITIALIZED
assert len(concept_foo.compiled) == 0 # because there is a body defined in the metadata
concept_bar = sequences[1][0].concept
assert concept_bar.body is None
assert concept_bar.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_bar.compiled == {
ConceptParts.BODY: concept_foo,
"foo": concept_foo
@@ -500,18 +500,18 @@ class TestBnfNodeParser(TestUsingMemoryBasedSheerka):
# explicit validations of the compiled
concept_foo = sequences[0][0].concept
assert concept_foo.body is None
assert concept_foo.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_foo.compiled == {ConceptParts.BODY: DoNotResolve("one two")}
concept_bar = sequences[1][0].concept
assert concept_bar.body is None
assert concept_bar.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_bar.compiled == {
ConceptParts.BODY: concept_foo,
"foo": concept_foo
}
concept_baz = sequences[2][0].concept
assert concept_baz.body is None
assert concept_baz.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_baz.compiled == {
ConceptParts.BODY: concept_bar,
"bar": concept_bar,
@@ -631,7 +631,7 @@ class TestBnfNodeParser(TestUsingMemoryBasedSheerka):
# explicit validations of the compiled
concept_foo = sequences[0].concept
assert concept_foo.body is None
assert concept_foo.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_foo.compiled == {'number': my_map["number"],
'two': my_map["two"],
ConceptParts.BODY: DoNotResolve(value='twenty two')}
@@ -642,7 +642,7 @@ class TestBnfNodeParser(TestUsingMemoryBasedSheerka):
# explicit validations of the compiled
concept_foo = sequences[0].concept
assert concept_foo.body is None
assert concept_foo.body == BuiltinConcepts.NOT_INITIALIZED
assert concept_foo.compiled == {'number': my_map["number"],
'one': my_map["one"],
ConceptParts.BODY: DoNotResolve(value='twenty one')}