public async Task <IActionResult> CriarPedido([FromBody] CriacaoPedidoDTO pedido) { var ret = await facade.CriarPedidoAsync(pedido); if (ret.Sucesso) { return(Ok(ret.Id)); } else { return(BadRequest(ret.Mensagem)); } }
public void CriarPedidoDeveCriarEGuardarCopiaNaMensageria() { IdVersaoDTO cliente = new IdVersaoDTO() { Id = 1, Versao = new byte[0] }; List <IdVersaoDTO> itens = new List <IdVersaoDTO>() { new IdVersaoDTO() { Id = 1, Versao = new byte[0] }, new IdVersaoDTO() { Id = 2, Versao = new byte[0] }, }; var facade = new LojaStoneFacade(mockRepositorioCliente.Object, mockRepositorioItem.Object, mockRepositorioPedido.Object, mockServicoMensageria.Object, mockLogger.Object); mockRepositorioCliente .Setup(a => a.BuscarClienteAsync(It.Is <int>(b => b == cliente.Id), It.IsAny <byte[]>())) .ReturnsAsync(() => { return(new Cliente()); }); mockRepositorioItem .Setup(a => a.BuscarItemAsync(It.Is <int>(b => b == itens[0].Id), It.IsAny <byte[]>())) .ReturnsAsync(() => { return(new Item()); }); mockRepositorioItem .Setup(a => a.BuscarItemAsync(It.Is <int>(b => b == itens[1].Id), It.IsAny <byte[]>())) .ReturnsAsync(() => { return(new Item()); }); var retorno1 = facade.CriarPedidoAsync(new CriacaoPedidoDTO() { Cliente = cliente, Itens = itens }); retorno1.Wait(); mockServicoMensageria.Verify(a => a.GuardarCopia(It.IsAny <Pedido>()), Times.Once); mockRepositorioPedido.Verify(a => a.CriarPedidoAsync(It.IsAny <Pedido>()), Times.Once); mockRepositorioCliente.Verify(a => a.BuscarClienteAsync(It.IsAny <int>(), It.IsAny <byte[]>()), Times.Once); mockRepositorioItem.Verify(a => a.BuscarItemAsync(It.IsAny <int>(), It.IsAny <byte[]>()), Times.Exactly(2)); }