Files
Sheerka-Old/tests/non_reg/test_sheerka_display.py
T
kodjo 821dbed189 Fixed #3: Added sheerka.resolve_rule()
Fixed #5: Refactored SheerkaComparisonManager
Fixed #6: Sya parser no longer works after restart
2021-01-15 07:11:04 +01:00

108 lines
2.8 KiB
Python

from tests.TestUsingMemoryBasedSheerka import TestUsingMemoryBasedSheerka
class TestSheerkaNonRegDisplay(TestUsingMemoryBasedSheerka):
def test_i_can_display_results_when_return_values_processing_is_on(self, capsys):
init = [
"def concept one as 1",
]
sheerka = self.init_scenario(init)
sheerka.enable_process_return_values = True
sheerka.evaluate_user_input("one")
captured = capsys.readouterr()
assert captured.out == "ReturnValue(who=evaluators.OneSuccess, status=True, value=(1001)one)\n"
def test_i_can_display_multiple_concepts_description(self, capsys):
init = [
"def concept foo as 1",
"def concept foo as 2",
]
sheerka = self.init_scenario(init)
capsys.readouterr()
sheerka.enable_process_return_values = True
sheerka.evaluate_user_input("desc(foo)")
captured = capsys.readouterr()
assert captured.out == """id : 1001
name : foo
key : foo
definition: None
type : None
body : 1
where : None
pre : None
post : None
ret : None
vars : []
props : {}
id : 1002
name : foo
key : foo
definition: None
type : None
body : 2
where : None
pre : None
post : None
ret : None
vars : []
props : {}
"""
def test_i_can_display_multiple_success(self, capsys):
init = [
"def concept foo as 1",
"def concept foo as 2",
]
sheerka = self.init_scenario(init)
capsys.readouterr()
sheerka.enable_process_return_values = True
sheerka.evaluate_user_input("foo")
captured = capsys.readouterr()
assert captured.out == """ReturnValue(who=evaluators.Concept, status=True, value=(1001)foo)
ReturnValue(who=evaluators.Concept, status=True, value=(1002)foo)
"""
def test_i_can_list_ontologies(self, capsys):
init = [
"push_ontology('test 1')",
"push_ontology('test 2')",
"pop_ontology()",
"push_ontology('test 3')",
]
sheerka = self.init_scenario(init)
capsys.readouterr()
sheerka.enable_process_return_values = True
sheerka.evaluate_user_input("ontologies()")
captured = capsys.readouterr()
assert captured.out == """test 3
test 1
#unit_test#
__default__
"""
def test_i_can_display_objects_in_memory(self, capsys):
init = [
"def concept one as 1",
"def concept two as 2",
"one",
"two"
]
sheerka = self.init_scenario(init)
capsys.readouterr()
sheerka.enable_process_return_values = True
sheerka.evaluate_user_input("in_memory()")
captured = capsys.readouterr()
assert captured.out == """one: (1001)one
two: (1002)two
"""