public void Equals_TwoObjectsOfDerivedClassWithSameUnderlyingValue_ShouldBeEqual() { var testValue1 = new CombinedEnum(TestEnum.Value.First); var testValue2 = new DerivedCombinedEnum(TestEnum.Value.First); Assert.AreEqual(testValue1, testValue2); }
public void Equals_TwoObjectsOfDerivedClassWithDifferentUnderlyingValue_ShouldNotBeEqual() { var testValue1 = new CombinedEnum(TestEnum.Value.First); var testValue2 = new DerivedCombinedEnum(TestEnum.Value.Second); Assert.AreNotEqual(testValue1, testValue2); }
public void IsDefined_WithDerivedEnumValueTypeAndInvalidUnderlyingValue_ShouldReturnFalse() { var testValue = new CombinedEnum(TestEnum.Value.First); var testObject = new DerivedCombinedEnum(TestEnum.Value.Third);; var result = testValue.IsDefined(testObject); Assert.IsFalse(result); }
public void IsDefined_WithDifferentEnumValueTypeAndValidUnderlyingValue_ShouldReturnFalse() { var testValue = new FirstEnum(TestEnum.Value.First); var testObject = new CombinedEnum(TestEnum.Value.Unknown);; var result = testValue.IsDefined(testObject); Assert.IsFalse(result); }
public void GetHashCode_ForDifferentTypeAndDifferentValue_ShouldNotBeEqual() { var testValue1 = new FirstEnum(TestEnum.Value.First); var testValue2 = new CombinedEnum(TestEnum.Value.Second); var result1 = testValue1.GetHashCode(); var result2 = testValue2.GetHashCode(); Assert.AreNotEqual(result1, result2); }