public void When_add_new_item_of_already_present_product_sum_items() { // Given var product = new ProductSeed().GetSeedObject(); product.Id = 1; product.UpdateStock(14, product); var posOrder = new POSOrder(); var repository = MockRepository((mock) => mock.Setup(m => m.GetBy(It.IsAny <int>())) .Returns(product)); posOrder.AddItem(product.Id, 2, repository); var expectedOrderTotal = product.EndCustomerPrice * 6; // When posOrder.AddItem(product.Id, 4, repository); // Then Assert.Equal(1, posOrder.Items.Count); Assert.Equal(expectedOrderTotal, posOrder.OrderTotal); }
public static POSOrder GetSeedTransaction() { var product = new Core.Entities.Catalog.Product { Id = 1, }; var posOrder = new POSOrder(); var quantity = 1; var posOrderItem = POSOrderItem.Create(product.Id, quantity, posOrder, GetMockProductRepository()); posOrder.AddItem(posOrderItem.Value); return(posOrder); }
private POSOrder GetBasicPOSOrder() { var product = new ProductSeed().GetSeedObject(); product.Id = 1; product.UpdateStock(10, product); var repository = MockRepository((mock) => mock.Setup(m => m.GetBy(It.IsAny <int>())) .Returns(product)); var posOrder = new POSOrder(); posOrder.AddItem(product.Id, 1, repository); return(posOrder); }
public void When_try_add_item_to_cancelled_item_shouldnt_update_object() { //Given var product = new ProductSeed().GetSeedObject(); product.Id = 1; product.UpdateStock(3, product); var posOrder = new POSOrder(); var repository = MockRepository((mock) => mock.Setup(m => m.GetBy(It.IsAny <int>())) .Returns(product)); var expectedQuantity = 1; posOrder.AddItem(product.Id, expectedQuantity, repository); posOrder.Cancel(); //When posOrder.AddItem(product.Id, 1, repository); //Then var item = posOrder.Items.FirstOrDefault(); Assert.Equal(expectedQuantity, item.Quantity); }