Exemple #1
0
        public void update_should_return_bad_request_if_item_null()
        {
            ShoppingListItemUpdate request = null;

            var result = _controller.Update(request);

            Assert.AreEqual(result.GetType(), typeof(BadRequestResult));
        }
Exemple #2
0
        public void update_should_return_bad_request_if_item_name_is_empty()
        {
            var request = new ShoppingListItemUpdate {
                ItemName = ""
            };

            var result = _controller.Update(request);

            Assert.AreEqual(result.GetType(), typeof(BadRequestResult));
        }
Exemple #3
0
        public void update_should_return_bad_request_if_item_name_does_not_exist()
        {
            ShoppingListItemUpdate request = new ShoppingListItemUpdate {
                ItemName = "Item1", Quantity = 1
            };

            _repositoryMock.Setup(x => x.GetItem(request.ItemName)).Returns((ShoppingListItem)null);

            var result = _controller.Update(request);

            Assert.AreEqual(result.GetType(), typeof(BadRequestResult));
        }
Exemple #4
0
        public void update_should_call_update_repository_with_correct_data_if_item_valid()
        {
            var request = new ShoppingListItemUpdate {
                ItemName = "Item1", Quantity = 1
            };

            _repositoryMock.Setup(x => x.GetItem(request.ItemName)).Returns(new ShoppingListItem {
                ItemName = "Item1", Quantity = 5
            });

            var result = _controller.Update(request);

            _repositoryMock.Verify(x => x.Update(request));
        }
Exemple #5
0
        public void update_should_return_ok_if_item_valid()
        {
            var request = new ShoppingListItemUpdate {
                ItemName = "Item1", Quantity = 1
            };

            _repositoryMock.Setup(x => x.GetItem(request.ItemName)).Returns(new ShoppingListItem {
                ItemName = "Item1", Quantity = 5
            });

            var result = _controller.Update(request);

            Assert.AreEqual(result.GetType(), typeof(OkResult));
        }
        public void should_update_shopping_list_item_in_data_store()
        {
            _dataStore.Add(new ShoppingListItem {
                ItemName = "Item1", Quantity = 1
            });

            var repository = new ShoppingListRepository();
            var item       = new ShoppingListItemUpdate {
                ItemName = "Item1", Quantity = 5
            };

            repository.Update(item);

            Assert.AreEqual(_dataStore[0].ItemName, "Item1");
            Assert.AreEqual(_dataStore[0].Quantity, 5);
        }
Exemple #7
0
        public IHttpActionResult Update(ShoppingListItemUpdate request)
        {
            if (request == null || string.IsNullOrWhiteSpace(request.ItemName))
            {
                return(BadRequest());
            }

            var doesAlreadyExist = (_repository.GetItem(request.ItemName) != null);

            if (!doesAlreadyExist)
            {
                return(BadRequest());
            }

            _repository.Update(request);

            return(Ok());
        }
Exemple #8
0
        public void Update(ShoppingListItemUpdate request)
        {
            var item = _dataStore.Find(x => x.ItemName == request.ItemName);

            item.Quantity = request.Quantity;
        }