Пример #1
0
        public void TestSearchProducts_ShouldReturnCorrectProducts(string searchParam)
        {
            var firstMockedProduct  = new Mock <Product>();
            var secondMockedProduct = new Mock <Product>();
            var thirdMockedProduct  = new Mock <Product>();

            var products = new List <Product>
            {
                firstMockedProduct.Object,
                secondMockedProduct.Object,
                thirdMockedProduct.Object
            };

            var factory    = new Mock <IProductFactory>();
            var repository = new Mock <IRepository <Product> >();

            repository.Setup(x => x.GetAll(It.IsAny <Expression <Func <Product, bool> > >()))
            .Returns(products);

            var categoryService = new Mock <ICategoryService>();
            var unitOfWork      = new Mock <IUnitOfWork>();

            var service = new ZobShop.Services.ProductService(factory.Object, repository.Object, categoryService.Object, unitOfWork.Object);

            var result = service.SearchProducts(searchParam);

            Assert.AreEqual(products, result);
        }
Пример #2
0
        public void TestSearchProducts_ShouldCallRepositoryGetAll(string searchParam)
        {
            var factory         = new Mock <IProductFactory>();
            var repository      = new Mock <IRepository <Product> >();
            var categoryService = new Mock <ICategoryService>();
            var unitOfWork      = new Mock <IUnitOfWork>();

            var service = new ZobShop.Services.ProductService(factory.Object, repository.Object, categoryService.Object, unitOfWork.Object);

            service.SearchProducts(searchParam);

            repository.Verify(x => x.GetAll(It.IsAny <Expression <Func <Product, bool> > >()), Times.Once);
        }