public void When_Delete_IsCalled_And_ProductId_Is_Invalid_Should_RespondWith_BadRequest()
        {
            Cart cart = new Cart();

            using (var controller = new CartController(new FakeProductRepository(), cart))
            {
                DummyOrderDelete deleteOrder = new DummyOrderDelete()
                {
                    ProductId = 114
                };

                // Act
                IActionResult actionResultNull  = controller.Delete(deleteOrder);
                var           badRequestResult1 = actionResultNull as BadRequestObjectResult;

                // Assert
                Assert.NotNull(badRequestResult1);
                Assert.Equal(400, badRequestResult1.StatusCode);
            }
        }
예제 #2
0
        public IActionResult Delete([FromBody] DummyOrderDelete dummyProduct)
        {
            if (dummyProduct == null)
            {
                return(BadRequest("Invalid product id"));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var product = repository.GetProductById(dummyProduct.ProductId.Value);

            if (product.HasNoValue)
            {
                return(BadRequest("No product found!"));
            }

            cart.RemoveLine(product.Value);

            return(NoContent());
        }