public void Should_ReturnHashCode_When_CallGetHashCode() { Type FromState = typeof(WuStateReady); Type ToState = typeof(WuStateRebootRequired); int expectedHash = 17 + 31 * FromState.GetHashCode() + 31 * ToState.GetHashCode(); StateTransition t1 = new StateTransition(FromState, ToState); Assert.AreEqual(expectedHash, t1.GetHashCode()); }
public void GetHashCode_ReturnsExpectedInt() { // Arrange var stateTransition = new StateTransition(new State(OrderStatus.Initialized), new Trigger(OrderEvent.Accepted)); // Act var result = stateTransition.GetHashCode(); // Assert Assert.Equal(typeof(int), result.GetType()); }
public void Equals_VariousStateTransitionsAndOperators_TestsCorrectly() { // Arrange var stateTransition1 = new StateTransition(new State(OrderStatus.Initialized), new Trigger(OrderEvent.Accepted)); var stateTransition2 = new StateTransition(new State(OrderStatus.Initialized), new Trigger(OrderEvent.Accepted)); var stateTransition3 = new StateTransition(new State(OrderStatus.Accepted), new Trigger(OrderEvent.Working)); // Act var result1 = stateTransition1.Equals(stateTransition2); var result2 = !stateTransition1.Equals(stateTransition3); var result3 = stateTransition1 == stateTransition2; var result4 = stateTransition1 != stateTransition3; var result5 = stateTransition1.GetHashCode() == stateTransition2.GetHashCode(); // Assert Assert.True(result1); Assert.True(result2); Assert.True(result3); Assert.True(result4); Assert.True(result5); }