private static void AssertEqual(MemberInfo m1, MemberInfo m2) { var eq = new MemberInfoEqualityComparer(); Assert.IsTrue(eq.Equals(m1, m2)); Assert.AreEqual(eq.GetHashCode(m1), eq.GetHashCode(m2)); }
public void WeaklyTypedGetHashCodeOfNullThrows() { // Arrange IEqualityComparer sut = new MemberInfoEqualityComparer(); // Act & assert Assert.Throws <ArgumentNullException>(() => sut.GetHashCode(null)); }
public void StronglyTypedGetHashCodeWithNullShouldNotThrowAsExceptionIsNotExpectedThere() { // Arrange var sut = new MemberInfoEqualityComparer(); // Act & assert Assert.Null(Record.Exception(() => sut.GetHashCode(null))); }
public void MemberInfoComparer_Custom_ThrowsNotImplemented() { var eq = new MemberInfoEqualityComparer(); var custom1 = new MyCustomMemberInfo(); var custom2 = new MyCustomMemberInfo(); Assert.ThrowsException <NotImplementedException>(() => eq.Equals(custom1, custom2)); Assert.ThrowsException <NotImplementedException>(() => eq.GetHashCode(custom1)); Assert.ThrowsException <NotImplementedException>(() => eq.ResolveMember(typeof(object), custom1)); }
public void StronglyTypedGetHashCodeWithNullSutThrows() { // Fixture setup var sut = new MemberInfoEqualityComparer(); // Exercise system and verify outcome Assert.Throws <ArgumentNullException>(() => sut.GetHashCode(null)); // Teardown }
public void StronglyTypedGetHashCodeWithNullShouldNotThrowAsExceptionIsNotExpectedThere() { // Fixture setup var sut = new MemberInfoEqualityComparer(); // Exercise system and verify outcome Assert.Null(Record.Exception(() => sut.GetHashCode(null))); // Teardown }
public void MemberInfoComparer_Default_ThrowsNotSupported() { var eq = new MemberInfoEqualityComparer(); var member1 = new MyMemberInfo(); var member2 = new MyMemberInfo(); Assert.ThrowsException <NotSupportedException>(() => eq.Equals(member1, member2)); Assert.ThrowsException <NotSupportedException>(() => eq.GetHashCode(member1)); Assert.ThrowsException <NotSupportedException>(() => eq.ResolveMember(typeof(object), member1)); }
public void WeaklyTypedGetHashCodeReturnsCorrectResultForTypes(Type t) { // Arrange IEqualityComparer sut = new MemberInfoEqualityComparer(); // Act var result = sut.GetHashCode(t); // Assert var expectedHashCode = t.Name.GetHashCode(); Assert.Equal(expectedHashCode, result); }
public void WeaklyTypedGetHashCodeReturnsCorrectResultForNonMemberInfos(object obj) { // Arrange IEqualityComparer sut = new MemberInfoEqualityComparer(); // Act var result = sut.GetHashCode(obj); // Assert var expectedHashCode = obj.GetHashCode(); Assert.Equal(expectedHashCode, result); }
public void WeaklyTypedGetHashCodeReturnsCorrectResultForPropertyInfo() { // Arrange IEqualityComparer sut = new MemberInfoEqualityComparer(); var propertyInfo = typeof(PropertyHolder <object>).GetProperty("Property"); // Act var result = sut.GetHashCode(propertyInfo); // Assert var expectedHashCode = propertyInfo.DeclaringType.GetHashCode() ^ propertyInfo.Name.GetHashCode(); Assert.Equal(expectedHashCode, result); }
public void WeaklyTypedGetHashCodeReturnsCorrectResultForTypes(Type t) { // Fixture setup IEqualityComparer sut = new MemberInfoEqualityComparer(); // Exercise system var result = sut.GetHashCode(t); // Verify outcome var expectedHashCode = t.Name.GetHashCode(); Assert.Equal(expectedHashCode, result); // Teardown }
public void WeaklyTypedGetHashCodeReturnsCorrectResultForPropertyInfo() { // Fixture setup IEqualityComparer sut = new MemberInfoEqualityComparer(); var propertyInfo = typeof(PropertyHolder <object>).GetProperty("Property"); // Exercise system var result = sut.GetHashCode(propertyInfo); // Verify outcome var expectedHashCode = propertyInfo.DeclaringType.GetHashCode() ^ propertyInfo.Name.GetHashCode(); Assert.Equal(expectedHashCode, result); // Teardown }
public void StronglyTypedGetHashCodeWithNullSutThrows() { // Fixture setup var sut = new MemberInfoEqualityComparer(); // Exercise system and verify outcome Assert.Throws<ArgumentNullException>(() => sut.GetHashCode(null)); // Teardown }
public void WeaklyTypedGetHashCodeReturnsCorrectResultForPropertyInfo() { // Fixture setup IEqualityComparer sut = new MemberInfoEqualityComparer(); var propertyInfo = typeof(PropertyHolder<object>).GetProperty("Property"); // Exercise system var result = sut.GetHashCode(propertyInfo); // Verify outcome var expectedHashCode = propertyInfo.DeclaringType.GetHashCode() ^ propertyInfo.Name.GetHashCode(); Assert.Equal(expectedHashCode, result); // Teardown }