Exemplo n.º 1
0
        public static void NotAlike <T>(T expected, T actual)
        {
            var comparison = ObjectGraph.Comparison();
            var result     = comparison.Compare(expected, actual);

            result.ExceededDifferences.Should().BeTrue(result.DifferencesString);
        }
        private static ComparisonResult Compare <T>(T expected, T actual, string[] skippedPropertiesOrFields)
        {
            var comparison = ObjectGraph.Comparison();

            foreach (var skippedMember in skippedPropertiesOrFields)
            {
                comparison.Config.MembersToIgnore.Add(skippedMember);
            }
            var result = comparison.Compare(expected, actual);

            return(result);
        }
        private static ComparisonResult Compare <T>(T expected, T actual, IEnumerable <Expression <Func <T, object> > > skippedPropertiesOrFields)
        {
            var comparison = ObjectGraph.Comparison();

            foreach (var skippedPropertyOrField in skippedPropertiesOrFields)
            {
                var property = Property.FromUnaryExpression(skippedPropertyOrField);
                var field    = Field.FromUnaryExpression(skippedPropertyOrField);
                if (property.HasValue)
                {
                    Ignore(property, comparison);
                }
                else if (field.HasValue)
                {
                    Ignore(field, comparison);
                }
            }
            var result = comparison.Compare(expected, actual);

            return(result);
        }