예제 #1
0
        public void AssertEquality <TValue>(TValue expected, TValue actual, IEnumerable <string> propertiesToIgnore = null,
                                            IDictionary <string, object> additionalParameters = null, bool recurseObjectProperties = true)
        {
            var strategy = _asserterStrategyFactory.GetStrategy <TValue>();

            strategy.AssertEquality(expected, actual, propertiesToIgnore, additionalParameters,
                                    recurseObjectProperties);
        }
예제 #2
0
        private Expression <Action <TValue, TValue> > GetComparisonMethod <TValue>(
            Expression <Action <TValue, TValue> > comparisonDelegate,
            IEnumerable <string> propertiesToIgnore,
            IDictionary <string, object> additionalParameters, bool recurseProperties)
        {
            if (comparisonDelegate.IsNotNull())
            {
                return(comparisonDelegate);
            }

            var strategy = _asserterStrategyFactory.GetStrategy <TValue>();

            Expression <Action <TValue, TValue> > assertDelegate =
                (e, a) => strategy.AssertEquality(e, a, propertiesToIgnore,
                                                  additionalParameters, recurseProperties);

            return(assertDelegate);
        }