Exemplo n.º 1
0
		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();
		}
Exemplo n.º 2
0
		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());
		}
Exemplo n.º 3
0
		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();
		}
Exemplo n.º 4
0
		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);
		}