public async Task PutPizza_ThrowsUnmatchedIdsException(UpdatePizzaModel pizza) { // ARRANGE var mockDifferentId = pizza.Id.Value + 1; var controller = Initialize(); // ACT & ASSERT await Assert.ThrowsAsync <UnmatchedIdsException>(() => controller.PutPizza(mockDifferentId, pizza)); }
public async Task <ActionResult> PutPizza([FromRoute] int id, [FromBody] UpdatePizzaModel pizza) { if (id != pizza.Id) { throw new UnmatchedIdsException(); } await _pizzaService.Update(pizza); return(Ok()); }
public async Task Update(UpdatePizzaModel pizza) { var editPizza = await _pizzaRepository.GetByIdAsync(pizza.Id.Value); if (editPizza == null) { throw new EntityCantBeLoadedException <Pizza>(pizza.Id.ToString()); } _mapper.Map(pizza, editPizza); await _pizzaRepository.UpdateAsync(editPizza); }
public async Task PutPizza_ReturnsOk(UpdatePizzaModel pizza) { // ARRANGE _mockPizzaService.Setup(service => service.Update(It.IsAny <UpdatePizzaModel>())) .Returns(Task.FromResult(0)); var controller = Initialize(); // ACT var result = await controller.PutPizza(pizza.Id.Value, pizza); // ASSERT _mockPizzaService.Verify(service => service.Update(pizza), Times.Once()); Assert.IsType <OkResult>(result); }
public async Task <IActionResult> PageEditPizza(UpdatePizzaModel model) { byte[] imageData = null; // считываем переданный файл в массив байтов using (var binaryReader = new BinaryReader(model.Img.OpenReadStream())) { imageData = binaryReader.ReadBytes((int)model.Img.Length); } db.Pizza.Remove(db.GetPizza(model.Id)); db.Pizza.Add(new Pizza { Name = model.Name, Img = imageData, Description = model.Description, Price = model.Price, Category = model.Category, Weigth = model.Weight }); await db.SaveChangesAsync(); return(RedirectToAction("Index", "Home")); }