GetTypeEqualityFunction_CustomTypeWithEqualsMethodWithWrongParameterType_IgnoresCustomMethodAndUsesObjectEquals () { TestTypeWithEqualsWithWrongType testObject = new TestTypeWithEqualsWithWrongType(false); Func <object, object, bool> equalityFunction = typeof(TestTypeWithEqualsWithWrongType).GetTypeEqualityFunction(); Assert.IsTrue( equalityFunction(testObject, testObject), "The function returned by GetTypeEqualityFunction should fall back on object.Equals when custom methods do no accept the correct parameters."); Assert.IsFalse( testObject.EqualsCalled, "The function returned by GetTypeEqualityFunction should fall back on object.Equals when custom methods do no accept the correct parameters."); }
GetTypeEqualityFunction_CustomTypeWithEqualsMethodWithWrongParameterType_IgnoresCustomMethodAndUsesObjectEquals () { TestTypeWithEqualsWithWrongType testObject = new TestTypeWithEqualsWithWrongType(false); Func<object, object, bool> equalityFunction = typeof (TestTypeWithEqualsWithWrongType).GetTypeEqualityFunction(); Assert.IsTrue( equalityFunction(testObject, testObject), "The function returned by GetTypeEqualityFunction should fall back on object.Equals when custom methods do no accept the correct parameters."); Assert.IsFalse( testObject.EqualsCalled, "The function returned by GetTypeEqualityFunction should fall back on object.Equals when custom methods do no accept the correct parameters."); }