public void When_reseting_state_and_no_action_is_specified() { var handler = new LambdaStateChangedHandler<TestArgs>(); _config.OnStateChange(handler); _machine.ResetTo<FirstState>(); }
public void When_changing_state_and_an_onleave_action_is_specified() { var leaveCalled = 0; var handler = new LambdaStateChangedHandler<TestArgs>(); handler.OnLeave = (s, a) => { leaveCalled++; }; _config.OnStateChange(handler); _machine.ResetTo<FirstState>(); _machine.TransitionTo<SecondState>(); leaveCalled.ShouldBe(1); }
public void When_reseting_state_and_there_is_an_action_specified() { var resetCalled = 0; var handler = new LambdaStateChangedHandler<TestArgs>(); handler.OnReset = (s, a) => { resetCalled++; }; _config.OnStateChange(handler); _machine.ResetTo<FirstState>(); resetCalled.ShouldBe(1); }