public void DetermineValueBasedOnName() { var targeter = new PropertyConventions(); targeter.CompareTarget.Register(x => x.Name == "Ignore", CompareTarget.Ignore); CheckTargetType <SampleClass>(targeter, x => x.Ignore, CompareTarget.Ignore); }
private void CheckTargetType <T>(PropertyConventions targeter, Expression <Func <T, object> > propertyExpression, CompareTarget target) { var pi = propertyExpression.GetPropertyInfo(); Assert.AreEqual(target, targeter.CompareTarget.Convention(pi)); }
/// <summary> /// Clear any conventions /// </summary> public void Clear() { IdentityChecker = new NullIdentityChecker(); TypeConventions = new TypeConventions(); PropertyConventions = new PropertyConventions(); }
public void DefaultIsUnknown() { var targeter = new PropertyConventions(); CheckTargetType <SampleClass>(targeter, x => x.Ignore, CompareTarget.Unknown); }
/// <summary> /// Register an equality comparer convention based on property information. /// </summary> /// <param name="func"></param> /// <param name="value"></param> public void ComparerConvention(Func <PropertyInfo, bool> func, Func <object, object, bool> value) { PropertyConventions.ComparerConvention(func, value); }