public void SelectAll_Should_Return_All_Products() { var productRepository = new JsonProductRepository(set); ICollection <Product> products = productRepository.SelectAll(); Assert.Equal(10, products.Count); }
public void Delete_IdOfProduct_RemovesProductFromCollection() { //arrange var productRepository = new JsonProductRepository(set); //act bool deleted = productRepository.Delete("p1"); //assert Assert.True(deleted); Assert.Equal(9, set.Count); }
public void Create_Product_AddsProductToCollection() { //arrange var productRepository = new JsonProductRepository(set); Product product = new Product("p11", "Sofa", 120); //act bool added = productRepository.Create(product); //assert Assert.Equal(11, set.Count); }
public void Update_Product_ModifiesProductInCollection() { //arrange var productRepository = new JsonProductRepository(set); Product updatedProduct = new Product("p1", "Pedigree Chum", 0.75, 1.50); //act bool updated = productRepository.Update(updatedProduct); //assert Assert.True(updated); Assert.Equal(1.50, set.First(p => p.Id == "p1").RetailPrice); }
public void SelectById_ProductId_ReturnsProduct() { //arrange var productRepository = new JsonProductRepository(set); Product product = new Product("p1", "Pedigree Chum", 0.70, 1.42); //act Product retrievedProduct = productRepository.SelectById("p1"); //assert Assert.NotNull(retrievedProduct); Assert.Equal(product, retrievedProduct); }
public void SelectAll_ShouldReturnCollectionOfProducts() { //arrange Mock <IProductSerializer> serializer = new Mock <IProductSerializer>(); HashSet <Product> set = new HashSet <Product> { new Product("p1", "Pedigree Chum", 0.70, 1.42), new Product("p2", "Knife", 0.60, 1.31) }; serializer.Setup(s => s.ReadProducts()).Returns(set); var productRepository = new JsonProductRepository(serializer.Object); //act ICollection <Product> products = productRepository.SelectAll(); //assert serializer.Verify(s => s.ReadProducts()); Assert.Equal(set, products); }
public void Create_CallsWriteProductMethodOfSerializer() { //arrange Mock <IProductSerializer> serializer = new Mock <IProductSerializer>(); HashSet <Product> set = new HashSet <Product> { new Product("p1", "Pedigree Chum", 0.70, 1.42), new Product("p2", "Knife", 0.60, 1.31) }; serializer.Setup(s => s.ReadProducts()).Returns(set); var productRepository = new JsonProductRepository(serializer.Object); Product product = new Product("p11", "Shark cage", 400); //act bool created = productRepository.Create(product); //assert serializer.Verify(s => s.WriteProducts(It.IsAny <ISet <Product> >())); }
public void JsonSerializationTest() { //arrange string path = @"C:\Users\Public\Documents\products.json"; File.Delete(path); //If the file to be deleted does not exist, no exception is thrown. JsonProductRepository productRepository = new JsonProductRepository(); Product product1 = new Product("p1", "Pedigree Chum", 0.70, 1.42); Product product2 = new Product("p2", "Fork", 0.60, 1.31); //serializes product collection bool created1 = productRepository.Create(product1); bool created2 = productRepository.Create(product2); //deserializes product collection productRepository = new JsonProductRepository(); //assert Assert.True(productRepository.SelectAll().Contains(product1)); Assert.Equal(2, productRepository.SelectAll().Count); }