private void AddAllProducts() { ICollection <Product> products = productImporter.ImportProducts(); foreach (Product product in products) { productFacade.AddProduct(product); } }
public void BeAbleToAddANewProduct() { Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>(); ProductFacade facade = new ProductFacade(mockUnitOfWork.Object); mockUnitOfWork.Setup(u => u.ProductsRepository.Get(It.IsAny <Expression <Func <Product, bool> > >(), null, "")).Returns(new List <Product>()); mockUnitOfWork.Setup(u => u.ProductsRepository.Insert(It.IsAny <Product>())); Product productToBeAdded = new Product("Cocina", "Una cocina", 200); facade.AddProduct(productToBeAdded); mockUnitOfWork.VerifyAll(); }
public void NotAddAProductThatAlreadyIsInTheRepository() { Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>(); ProductFacade facade = new ProductFacade(mockUnitOfWork.Object); Product productToBeAdded = new Product("Cocina", "Una cocina", 200); List <Product> allProducts = new List <Product>() { productToBeAdded }; mockUnitOfWork.Setup(u => u.ProductsRepository.Get(It.IsAny <Expression <Func <Product, bool> > >(), null, "")).Returns(allProducts); facade.AddProduct(productToBeAdded); IEnumerable <Product> returnedProduts = facade.GetProducts(); mockUnitOfWork.VerifyAll(); CollectionAssert.AreEqual(allProducts, (ICollection)returnedProduts); }