public void ItShouldUseTheTriggersEventCode(Event trigger, IState targetState, State sut) { // Arrange var expected = trigger.Code; // Act sut.AddTransition(trigger, targetState); // Assert sut.HasTransition(expected).Should().BeTrue(); }
public void ItShouldAddTheExpectedTransition(Event trigger, IState targetState, State sut) { // Arrange var likeness = sut.AsSource() .OfLikeness<Transition>() .OmitAutoComparison() .With(x => x.Source).EqualsWhen((inputState, transition) => transition.Source == inputState) .With(x => x.Target).EqualsWhen((inputState, transition) => transition.Target == targetState) .With(x => x.Trigger).EqualsWhen((inputState, transition) => transition.Trigger == trigger); // Act sut.AddTransition(trigger, targetState); // Assert sut.Transitions.Should().HaveCount(1); likeness.ShouldEqual(sut.Transitions.Single()); }
public void ItShouldReturnTrueIfTheStateContainsTheTransition(Event trigger, IState targetState, State sut) { // Arrange sut.AddTransition(trigger, targetState); // Act var result = sut.HasTransition(trigger.Code); // Assert result.Should().BeTrue(); }
public void ItShouldReturnTheExpectedTargetStateIfTheEventCodeIsUsed(Event trigger, IState targetState, State sut) { // Arrange sut.AddTransition(trigger, targetState); // Act var result = sut.FindTargetState(trigger.Code); // Assert result.Should().BeSameAs(targetState); }