Exemplo n.º 1
0
 def testBaseCase(self):
     fsm = FiniteStateMachine("0,1",  "EVEN:pass,ODD:fail,BAD:fail",  "EVEN:ODD:1,ODD:EVEN:1,ODD:BAD:0")
     assert fsm.execute("00110") == 'pass'
     fsm.reset() # put it back into initial state
     assert "fail" == fsm.execute("00111")
     fsm.reset()
     assert "fail" == fsm.execute("001110000110011")
     pass
Exemplo n.º 2
0
 def testInvalidInput(self):
     fsm = FiniteStateMachine("0,1",  "EVEN:pass,ODD:fail,BAD:fail",  "EVEN:ODD:1,ODD:EVEN:1,ODD:BAD:0")
     didFail = False
     try:
         fsm.execute("00a10")
     except Exception:
         didFail = True
         pass
     assert didFail