Example #1
0
        public void BasketsController_Update_Basket_Order_Line_Return_Correct_Updated_Order_Line()
        {
            var baskets  = new InMemoryDataStore <Basket>();
            var products = new InMemoryDataStore <Product>();

            products.Seed();
            baskets.Seed(products);

            var bc = new BasketsController(products, baskets, _mapper);

            var actionResult = bc.PatchOrderLine(_testBasketId, _testProductId, new JsonPatchDocument <OrderLineUpdateDto>().Add(p => p.Quantity, 12));

            OkObjectResult okresult = actionResult as OkObjectResult;

            Assert.IsNotNull(okresult);

            OrderLineDto resultOrderLine = okresult.Value as OrderLineDto;

            Assert.IsNotNull(resultOrderLine);

            Assert.IsTrue(resultOrderLine.Quantity == 12);

            OrderLine orderline = null;

            baskets.Get(_testBasketId)?.OrderLines.TryGetValue(resultOrderLine.ProductId, out orderline);

            Assert.IsNotNull(orderline);

            Assert.IsTrue(orderline.Quantity == 12);
        }