public void TestCreate() { // Arrange Initialize(); var postItem4 = new PostPedido() { SolicitanteId = "0123-4567", Lanche = "Sanduíche de presunto", Bebida = "Fanta uva" }; // Act var result = _controller.Post(postItem4); var okResult = (ObjectResult)result; var pedidoResult = (PedidoSummary)okResult.Value; var getResult = _controller.GetAll(); var getOkResult = (ObjectResult)getResult; var listResult = (List <PedidoSummary>)getOkResult.Value; // Assert Assert.Equal(200, okResult.StatusCode); Assert.Equal(postItem4.Lanche, pedidoResult.Lanche); Assert.Equal(postItem4.Bebida, pedidoResult.Bebida); Assert.Equal(200, getOkResult.StatusCode); Assert.Equal(4, listResult.Count); Assert.Contains <PedidoSummary>((_res1 as ObjectResult).Value as PedidoSummary, listResult); Assert.Contains <PedidoSummary>((_res2 as ObjectResult).Value as PedidoSummary, listResult); Assert.Contains <PedidoSummary>((_res3 as ObjectResult).Value as PedidoSummary, listResult); Assert.Contains <PedidoSummary>(pedidoResult, listResult); }
private void Initialize() { if (_context == null) { _context = new FastFoodContext(); _repository = new PedidoRepository(_context); _service = new PedidoService(_repository); _controller = new PedidosController(_service); postItem = new PostPedido() { SolicitanteId = "0123-4567", Lanche = "Cheeseburger", Bebida = "Coquinha" }; postItem2 = new PostPedido() { SolicitanteId = "0123-4567", Lanche = "Cheeseburger", Bebida = "Pepsi" }; postItem3 = new PostPedido() { SolicitanteId = "0123-4567", Lanche = "X-Bacon", Bebida = "Guaraná" }; _res1 = _controller.Post(postItem); _res2 = _controller.Post(postItem2); _res3 = _controller.Post(postItem3); } }
public void TestGetFilterBySolicitante() { // Arrange Initialize(); var postItem4 = new PostPedido() { SolicitanteId = "0000-4567", Lanche = "Sanduíche de presunto", Bebida = "Fanta uva" }; var _res4 = _controller.Post(postItem4); // Act var result1 = _controller.GetFiltered("0123-4567"); var okResult1 = (ObjectResult)result1; var listResult1 = (List <PedidoSummary>)okResult1.Value; var result2 = _controller.GetFiltered("0000-4567"); var okResult2 = (ObjectResult)result2; var listResult2 = (List <PedidoSummary>)okResult2.Value; // Assert Assert.Equal(200, okResult1.StatusCode); Assert.Equal(3, listResult1.Count); Assert.Contains <PedidoSummary>((_res1 as ObjectResult).Value as PedidoSummary, listResult1); Assert.Contains <PedidoSummary>((_res2 as ObjectResult).Value as PedidoSummary, listResult1); Assert.Contains <PedidoSummary>((_res3 as ObjectResult).Value as PedidoSummary, listResult1); Assert.Equal(200, okResult2.StatusCode); Assert.Equal(1, listResult2.Count); Assert.Contains <PedidoSummary>((_res4 as ObjectResult).Value as PedidoSummary, listResult2); }
public PedidoSummary Create(PostPedido pedido) { var pedidos = _pedidoRepository.RecoverAll(); var maxValue = 0; foreach (Pedido pedidoItem in pedidos) { maxValue = maxValue < pedidoItem.Posicao ? pedidoItem.Posicao : maxValue; } var pedidoAddParam = pedido.ConvertToPedido(maxValue + 1); _pedidoRepository.Post(pedidoAddParam); _pedidoRepository.SaveChanges(); return(pedidoAddParam.ConvertToSummary()); }
public IActionResult Post([FromBody] PostPedido pedido) { return(Ok(_pedidoService.Create(pedido))); }
public static Pedido ConvertToPedido(this PostPedido postPedido, int posicao) => new Pedido(0, postPedido.SolicitanteId, posicao, postPedido.Lanche, postPedido.Bebida);