Fixed #43 : BnfNodeParser: I can recognize when multiple level of ISA
Fixed #44 : BnfNodeParser: I must simplify results when multiple levels of ISA Fixed #45 : Dynamic variables cannot be parsed at restart Fixed #46 : Concepts variables values are transformed into list by default Fixed #47 : SheerkaAdmin. Add min, max, mean time when restoring files
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
from core.builtin_concepts_ids import BuiltinConcepts
|
||||
from core.concept import get_concept_attrs, Concept, ALL_ATTRIBUTES
|
||||
from core.sheerka.services.SheerkaConceptManager import SheerkaConceptManager
|
||||
from parsers.BnfNodeParser import OrderedChoice, StrMatch, Sequence, ConceptExpression, Optional
|
||||
from tests.TestUsingFileBasedSheerka import TestUsingFileBasedSheerka
|
||||
@@ -86,7 +87,7 @@ class TestSheerkaNonRegFile(TestUsingFileBasedSheerka):
|
||||
"set_isa(thirties, number)",
|
||||
])
|
||||
|
||||
sheerka = self.get_sheerka() # another instance
|
||||
sheerka = self.new_sheerka_instance()
|
||||
|
||||
assert sheerka.evaluate_user_input("eval twenty one")[0].body == 21
|
||||
assert sheerka.evaluate_user_input("eval thirty one")[0].body == 31
|
||||
@@ -95,10 +96,29 @@ class TestSheerkaNonRegFile(TestUsingFileBasedSheerka):
|
||||
sheerka = self.get_sheerka()
|
||||
sheerka.evaluate_user_input("push_ontology('test')")
|
||||
|
||||
sheerka = self.new_sheerka_instance(False)
|
||||
sheerka = self.new_sheerka_instance()
|
||||
|
||||
res = sheerka.evaluate_user_input("pop_ontology()")
|
||||
|
||||
assert len(res) == 1
|
||||
assert res[0].status
|
||||
assert sheerka.isinstance(res[0].body, BuiltinConcepts.ONTOLOGY_REMOVED)
|
||||
|
||||
def test_i_can_read_concept_with_dynamic_variables_at_restart(self):
|
||||
sheerka = self.init_scenario([
|
||||
"def concept foo",
|
||||
"def concept prop_name",
|
||||
"def concept prop_value",
|
||||
"eval foo",
|
||||
"set_attr(foo, prop_name, prop_value)",
|
||||
])
|
||||
|
||||
ALL_ATTRIBUTES.clear()
|
||||
|
||||
res = sheerka.evaluate_user_input("in_memory()")
|
||||
res = sheerka.evaluate_user_input("memory(foo)")
|
||||
assert len(res) == 1
|
||||
assert res[0].status
|
||||
|
||||
assert get_concept_attrs(Concept("foo")) == []
|
||||
assert get_concept_attrs(res[0].body) == ['c:prop_name|1002:']
|
||||
|
||||
Reference in New Issue
Block a user