public void Update_Product_ShouldUpdateProduct() { //arrange SqlProductRepository productRepository = new SqlProductRepository(connectionString); Product product = productRepository.SelectAll().First(p => p.Id == "p1"); product.CostPrice = 1.6; //act bool updated = productRepository.Update(product); //assert Assert.True(updated); Assert.Equal(1.6, productRepository.SelectAll().First(p => p.Id == "p1").CostPrice); }
public void Update_ContrivedOptimisticConcurrencyConflict() { //arrange SqlProductRepository productRepository = new SqlProductRepository(connectionString); Product product1 = productRepository.SelectAll().First(p => p.Id == "p1"); Product product2 = productRepository.SelectAll().First(p => p.Id == "p1"); product1.RetailPrice = 1.50; product2.RetailPrice = 1.55; //act //modifying a row will update the RowVersion column value bool updatedProduct1 = productRepository.Update(product1); //product1 RowVersion property and database RowVersion //column values are now unequal, so the update will fail bool updatedProduct2 = productRepository.Update(product2); //assert Assert.True(updatedProduct1); Assert.False(updatedProduct2); }
public Product UpdateProduct(Product product) { return(_productRepository.Update(product)); }