public IActionResult ValorFinal([FromBody] PedidoLanche pedidoLanche) { if (pedidoLanche == null) { return(BadRequest()); } pedidoLanche.ValorFinal = _pedidoLancheBll.CalcularPrecoLanche(pedidoLanche); return(CreatedAtRoute("GetPedidoLanche", new { id = pedidoLanche.Id }, pedidoLanche)); }
public void TestValorePromocaoLight() { var dataPedidoLanche = new PedidoLanche { Id = 1, IdLanche = 1, Lanche = new Lanche() { Id = 1 }, IngredientesAdicionais = new Collection <IngredienteAdicional>() { new IngredienteAdicional() { Quantidade = 1, Ingrediente = new Ingrediente() { Id = 1, Descricao = "Alface", Valor = 0.40 } }, new IngredienteAdicional() { Quantidade = 1, Ingrediente = new Ingrediente() { Id = 2, Descricao = "Queijo", Valor = 1.5 } }, new IngredienteAdicional() { Quantidade = 1, Ingrediente = new Ingrediente() { Id = 3, Descricao = "Ovo", Valor = 0.8 } } } }; var dataLanche = new Lanche() { Descricao = "X-Egg", LancheIngredientes = new Collection <LancheIngrediente>() { new LancheIngrediente() { Ingrediente = new Ingrediente() { Id = 3, Descricao = "Ovo", Valor = 0.8 } }, new LancheIngrediente() { Ingrediente = new Ingrediente() { Id = 8, Descricao = "Hambúrguer de carne", Valor = 3 } } } }; _lancheBllMock.Setup(theObject => theObject.Find(dataPedidoLanche.Id)).Returns(dataLanche); _ingredienteBllMock.Setup(theObject => theObject.FindByDescription("Hambúrguer de carne")).Returns(new Ingrediente() { Id = 8 }); _ingredienteBllMock.Setup(theObject => theObject.FindByDescription("Queijo")).Returns(new Ingrediente() { Id = 10 }); var valor = _pedidoLancheBll.CalcularPrecoLanche(dataPedidoLanche); _lancheBllMock.Verify(x => x.Find(1), Times.Once()); Assert.Equal(5.85, valor); }