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__ """