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));
        }
Exemple #3
0
 /// <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);
        }
Exemple #5
0
 /// <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);
 }