private void AssertProducts(List <Product> products, List <Product> result)
        {
            var productAcccesor = new ProductAccesor();

            for (int i = 0; i < result.Count; i++)
            {
                var r = result[i];
                var p = products[i];

                var properties = productAcccesor.GetPropertyCodes();
                foreach (var code in properties)
                {
                    if (code == ProductAccesor.Brand)
                    {
                        var a = (Brand)productAcccesor.GetValue(r, code);
                        var b = (Brand)productAcccesor.GetValue(p, code);
                        AssertBrands(a, b);
                    }
                    else if (code == ProductAccesor.Catalog)
                    {
                        var a = (Catalog)productAcccesor.GetValue(r, code);
                        var b = (Catalog)productAcccesor.GetValue(p, code);
                        AssertCatalogs(a, b);
                    }
                    else
                    {
                        Assert.Equal(productAcccesor.GetValue(p, code), productAcccesor.GetValue(r, code));
                    }
                }
            }
        }
Esempio n. 2
0
        private void AssertProducts(List <Product> result)
        {
            Contract.Assert(result != null && result.Count == _products.Count);

            var productAcccesor = new ProductAccesor();

            for (int i = 0; i < result.Count; i++)
            {
                var r = result[i];
                var p = _products[i];

                var properties = productAcccesor.GetPropertyCodes();
                foreach (var code in properties)
                {
                    if (code == ProductAccesor.Brand)
                    {
                        var a = (Brand)productAcccesor.GetValue(r, code);
                        var b = (Brand)productAcccesor.GetValue(p, code);
                        AssertBrands(a, b);
                    }
                    else if (code == ProductAccesor.Catalog)
                    {
                        var a = (Catalog)productAcccesor.GetValue(r, code);
                        var b = (Catalog)productAcccesor.GetValue(p, code);
                        AssertCatalogs(a, b);
                    }
                    else
                    {
                        var a = productAcccesor.GetValue(p, code);
                        var b = productAcccesor.GetValue(r, code);
                        Contract.Assert((a == null && b == null) || (a?.Equals(b) ?? false));
                    }
                }
            }
        }