def test_single_user_transition(): df = DialogueFlow(States.B) df.add_user_transition(States.B, States.C, "[{hi, hello, hey, [how, you]}]") assert df.user_transition("oh hey there", df.state()) == States.C
def test_user_transition(): df = DialogueFlow(States.B) df.add_user_transition(States.B, States.C, "[{hi, hello, hey, [how, you]}]") df.add_user_transition(States.B, States.D, "[{bye, goodbye, see you, see ya, later}]") assert df.user_transition("oh hey there", df.state()) == States.C assert df.user_transition("well see ya later", df.state()) == States.D
def test_check(): df = DialogueFlow(States.A) df.add_state(States.B, error_successor=States.C) df.add_state(States.D, error_successor=States.A) df.add_system_transition(States.A, States.B, 'hello') df.add_user_transition(States.B, States.C, '[{hi, hello, hey, [how, you]}]') df.add_user_transition(States.B, States.A, '[{bye, goodbye, see you, see ya, later}]') df.add_system_transition(States.C, States.D, 'ok') assert df.check() df = DialogueFlow(States.A) df.add_state(States.B, error_successor=States.C) df.add_system_transition(States.A, States.B, 'hello') df.add_user_transition(States.B, States.C, '[{hi, hello, hey, [how, you]}]') df.add_user_transition(States.B, States.A, '[{bye, goodbye, see you, see ya, later}]') df.add_system_transition(States.C, States.D, 'ok') assert not df.check() df = DialogueFlow(States.A) df.add_state(States.B, error_successor=States.C) df.add_state(States.D, error_successor=States.A) df.add_system_transition(States.A, States.B, 'hello') df.add_user_transition(States.B, States.C, '[{hi, hello, hey, [how, you]}]') df.add_user_transition(States.B, States.A, '[{bye, goodbye, see you, see ya, later}]') df.add_system_transition(States.C, States.D, 'ok then $X alright') assert not df.check()