public void TestSendEventFromState() { var controller = new TestController(); var fsm = new AltoFSM <TestController>(controller); SetTransition(fsm); fsm.ChangeState <StandState>(); fsm.SendEvent(StateEvent.Flash); fsm.Update(); fsm.SendEvent(StateEvent.Walk); Assert.That(controller.sequence, Is.EqualTo("_in1_out1_in5_out5_in1_up1_out1_in2")); }
public void TestTransitionEventHandlers() { var controller = new TestController(); var fsm = new AltoFSM <TestController>(controller); SetTransition(fsm); fsm.SetState <StandState>(); fsm.SendEvent(StateEvent.Walk); fsm.Update(); fsm.SendEvent(StateEvent.Run); Assert.That(controller.sequence, Is.EqualTo("_out1_in2_up2_out2_in3")); }