private static void AssertEqual(TestProduct actual, TestProduct expected) { Assert.AreEqual(expected.Id, actual.Id); Assert.AreEqual(expected.Name, actual.Name); Assert.AreEqual(expected.AvailableFrom.Date, actual.AvailableFrom.Date); Assert.AreEqual(expected.AvailableFrom.Hour, actual.AvailableFrom.Hour); Assert.AreEqual(expected.AvailableFrom.Minute, actual.AvailableFrom.Minute); Assert.AreEqual(expected.Discontinued, actual.Discontinued); Assert.AreEqual(expected.ItemStatus, actual.ItemStatus); Assert.AreEqual(expected.Price, actual.Price); Assert.AreEqual(expected.Quantity, actual.Quantity); Assert.AreEqual(expected.Tags, actual.Tags); }
public void Create_Read_Update_Delete_TestProduct() { var testProduct = new TestProduct(); testProduct.AvailableFrom = DateTime.Now; testProduct.Discontinued = false; testProduct.Id = Guid.NewGuid(); testProduct.Name = "Sample Product"; testProduct.Price = 4.5m; testProduct.Quantity = 25; testProduct.ItemStatus = ItemStatus.Draft; var theList = new List<string>(); theList.Add("blue"); theList.Add("green"); theList.Add("red"); testProduct.Tags = theList; var mapper = new SimpleDbMapper<TestProduct>(); var test = new SimpleDbFacade<TestProduct>(this._simpleDbConfiguration, mapper); test.CreateItem(testProduct); var returnedProduct = test.GetItemById(testProduct.Id); Assert.IsNotNull(returnedProduct); AssertEqual(testProduct, returnedProduct); returnedProduct.Name = "Updated Sample"; returnedProduct.Price = 5m; returnedProduct.Quantity = 60; returnedProduct.ItemStatus = ItemStatus.Published; returnedProduct.Discontinued = true; returnedProduct.AvailableFrom = DateTime.Now.AddDays(-1); returnedProduct.Tags = new List<string>(); test.UpdateItem(returnedProduct); var updatedProduct = test.GetItemById(testProduct.Id); Assert.IsNotNull(updatedProduct); AssertEqual(updatedProduct, returnedProduct); test.DeleteItem(testProduct.Id); var deletedProduct = test.GetItemById(testProduct.Id); Assert.IsNull(deletedProduct); }