Fixed #109 : Mix python and concept. List comprehension
Fixed #110 : SheerkaDebugManager: add list_debug_settings Fixed #111 : SheerkaDebugManager: Implement ListDebugLogger Fixed #112 : SyaNodeParser: rewrite this parser Fixed #113 : Sheerka.: Add enable_parser_caching to disable parsers caching Fixed #114 : SyaNodeParser : Implement fast cache to resolve unrecognized tokens requests Fixed #115 : BnfNodeParser : Implement fast cache to resolve unrecognized tokens requests Fixed #116 : SequenceNodeParser : Implement fast cache to resolve unrecognized tokens requests Fixed #117 : ResolveMultiplePluralAmbiguityEvaluator: Resolve Multiple plural ambiguity
This commit is contained in:
@@ -45,13 +45,35 @@ class TestSheerkaNonRegMemory2(TestUsingMemoryBasedSheerka):
|
||||
assert res[0].status
|
||||
assert sheerka.isa(sheerka.new("one"), sheerka.new("number"))
|
||||
|
||||
# def test_i_can_define_plural(self):
|
||||
# init = [
|
||||
# "def concept man",
|
||||
# "def concept men as set_plural(man) ret man auto_eval True",
|
||||
# ]
|
||||
# sheerka = self.init_scenario(init)
|
||||
#
|
||||
# res = sheerka.evaluate_user_input("men")
|
||||
# assert res[0].status
|
||||
def test_i_can_get_sequence_when_evaluation_plural(self):
|
||||
init = [
|
||||
"def concept one",
|
||||
"def concept two",
|
||||
"def concept number",
|
||||
"global_truth(set_isa(one, number))",
|
||||
"global_truth(set_isa(two, number))",
|
||||
]
|
||||
sheerka = self.init_scenario(init)
|
||||
|
||||
res = sheerka.evaluate_user_input("eval numbers")
|
||||
|
||||
assert res[0].status
|
||||
assert set(res[0].body) == {sheerka.new("one"), sheerka.new("two")}
|
||||
|
||||
def test_i_can_use_list_comprehension(self):
|
||||
init = [
|
||||
"def concept rex",
|
||||
"def concept rantanplan",
|
||||
"def concept dog",
|
||||
"def concept x is a y as set_isa(x, y)",
|
||||
]
|
||||
sheerka = self.init_scenario(init)
|
||||
|
||||
res = sheerka.evaluate_user_input("global_truth([ x is a dog for x in [rex, rantanplan]])")
|
||||
|
||||
assert len(res) == 1
|
||||
assert res[0].status
|
||||
|
||||
rex = sheerka.new("rex")
|
||||
dog = sheerka.new("dog")
|
||||
assert sheerka.isa(rex, dog)
|
||||
|
||||
Reference in New Issue
Block a user