Files
Sheerka-Old/tests/core/test_SheerkaHistoryManager.py
T
kodjo 87cab44fb8 Fixed #125: SheerkaErrorManager
Fixed #135: Change services service priorities
Fixed #136: ErrorManager: Implement recognize_error
Fixed #137: BNFNodeParser : Error when parsing regex with sub parsers
Fixed #138: get_last_errors(): real errors sources are lost
Fixed #139: OneError return value removes the origin of the error
Fixed #140: Concept variables are not correctly handled when parsing sub expression
Fixed #143: Implement has_unknown_concepts()
2021-10-28 14:04:41 +02:00

54 lines
2.1 KiB
Python

from core.sheerka.services.SheerkaHistoryManager import hist, SheerkaHistoryManager
from tests.TestUsingFileBasedSheerka import TestUsingFileBasedSheerka
class TestSheerkaHistoryManager(TestUsingFileBasedSheerka):
def test_i_can_retrieve_history(self):
sheerka = self.get_sheerka()
service = sheerka.services[SheerkaHistoryManager.NAME]
sheerka.save_execution_context = True
sheerka.evaluate_user_input("def concept one as 1")
sheerka.evaluate_user_input("one")
sheerka.evaluate_user_input("xxx")
sheerka.evaluate_user_input("def concept two as 2")
sheerka.evaluate_user_input("two")
sheerka.evaluate_user_input("def concept three as 3")
sheerka.evaluate_user_input("three")
sheerka.evaluate_user_input("def concept four as 4")
sheerka.evaluate_user_input("four")
sheerka.evaluate_user_input("def concept five as 5")
sheerka.evaluate_user_input("five")
h = list(service.history(-1)) # all
transformed_h = [hist(item.event.message, item.status) for item in h]
assert transformed_h == [
hist("five", True),
hist("def concept five as 5", True),
hist("four", True),
hist("def concept four as 4", True),
hist("three", True),
hist("def concept three as 3", True),
hist("two", True),
hist("def concept two as 2", True),
hist("xxx", False),
hist("one", True),
hist("def concept one as 1", True),
hist("Initializing Sheerka.", None)
]
h = list(service.history(2))
transformed_h = [hist(item.event.message, item.status) for item in h]
assert transformed_h == [
hist("five", True),
hist("def concept five as 5", True)
]
h = list(service.history(2, 2))
transformed_h = [hist(item.event.message, item.status) for item in h]
assert transformed_h == [
hist("four", True),
hist("def concept four as 4", True),
]