Beispiel #1
0
        public DRepositoryTest()
        {
            var productList = new List <Product>
            {
                new Product {
                    Name = "abcde", Count = 2, Price = 13M
                },
                new Product {
                    Name = "hello", Count = 8, Price = 2.5M
                }
            };
            var productStat = new ProductsStat {
                ItemsCount = 2, Sum = 13M, ProductsCount = 10
            };

            _contextMock = new Mock <IProductsDbContext>();

            _contextMock.Setup(c => c.SearchAsync(It.IsAny <string>()))
            .ReturnsAsync(productList);
            _contextMock.Setup(c => c.AddAsync(It.IsAny <Product>()))
            .ReturnsAsync(true);
            _contextMock.Setup(c => c.GetStatAsync())
            .ReturnsAsync(productStat);

            _busMock    = new Mock <IBus>();
            _mapperMock = new Mock <IMapper>();

            var pubsubMock = new Mock <IPubSub>();

            _busMock.Setup(b => b.PubSub).Returns(pubsubMock.Object);

            _productRepository = new ProductRepository(_contextMock.Object, _busMock.Object, _mapperMock.Object);
        }
Beispiel #2
0
        public async Task <ProductsStat> GetStat()
        {
            try
            {
                var productsStat = await _context.GetStatAsync();

                if (productsStat == null)
                {
                    productsStat = new ProductsStat
                    {
                        ProductsCount = 0,
                        ItemsCount    = 0,
                        Sum           = 0
                    }
                }
                ;
                return(productsStat);
            }
            catch (Exception ex)
            {
                throw new DatabaseErrorException(ex);
            }
        }