Exemple #1
0
        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));
        }
Exemple #2
0
        public async Task <ActionResult> PutPizza([FromRoute] int id, [FromBody] UpdatePizzaModel pizza)
        {
            if (id != pizza.Id)
            {
                throw new UnmatchedIdsException();
            }
            await _pizzaService.Update(pizza);

            return(Ok());
        }
Exemple #3
0
        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);
        }
Exemple #4
0
        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);
        }
Exemple #5
0
        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"));
        }