public void FireThrowsIfEventFireThrows() { var sm = new StateMachine("sm"); var initial = sm.CreateInitialState("initial"); var operation = sm.CreateState("state2"); var success = sm.CreateState("success"); var evt = new Event("evt"); operation.TransitionOn(evt).To(operation); var op = new Operation<State>(evt, operation, success); var task = op.FireAsync(); Assert.True(task.IsFaulted); Assert.Throws<TransitionNotFoundException>(() => task.GetAwaiter().GetResult()); }