public async Task CadastrarPedidoFreteNaoEncontrado() { var freteServiceMock = new FreteServicoMock(); var freteServico = freteServiceMock.ConfigurarObterFretePeloIdInexistente().Build(); var obterFreteQuery = new ObterFreteQuery(freteServico, new ObterFreteValidador(freteServico)); var clienteServiceMock = new ClienteServicoMock(); var clienteServico = clienteServiceMock.ConfigurarObterClientePeloId().ConfigurarObterClientes().Build(); var obterClientesQuery = new ObterClientesQuery(clienteServico); var produtoServiceMock = new ProdutoServicoMock(); var produtoServico = produtoServiceMock.ConfigurarObterProdutoPeloId().ConfigurarContarProdutosPorId().Build(); var obterProdutoQuery = new ObterProdutosQuery(produtoServico); var pedidoServiceMock = new PedidoServicoMock(); var pedidoServico = pedidoServiceMock.ConfigurarCadastrarSucesso().Build(); var cadastrarCommand = new CadastrarPedidoCommand(pedidoServico, obterFreteQuery, obterClientesQuery, obterProdutoQuery, new CadastrarPedidoValidador(clienteServico, produtoServico)); var resultado = await cadastrarCommand.Executar(cadastrarPedidoInputSucesso); Assert.GreaterOrEqual(1, resultado.NumeroPedido); }
public void CadastrarPedidoProdutoInexistente() { var freteServiceMock = new FreteServicoMock(); var freteServico = freteServiceMock.ConfigurarObterFretePeloId().Build(); var obterFreteQuery = new ObterFreteQuery(freteServico, new ObterFreteValidador(freteServico)); var clienteServiceMock = new ClienteServicoMock(); var clienteServico = clienteServiceMock.ConfigurarObterClientePeloId().ConfigurarObterClientes().Build(); var obterClientesQuery = new ObterClientesQuery(clienteServico); var produtoServiceMock = new ProdutoServicoMock(); var produtoServico = produtoServiceMock.ConfigurarObterProdutoPeloIdInexistente().Build(); var obterProdutoQuery = new ObterProdutosQuery(produtoServico); var pedidoServiceMock = new PedidoServicoMock(); var pedidoServico = pedidoServiceMock.ConfigurarCadastrarSucesso().Build(); var cadastrarCommand = new CadastrarPedidoCommand(pedidoServico, obterFreteQuery, obterClientesQuery, obterProdutoQuery, new CadastrarPedidoValidador(clienteServico, produtoServico)); Assert.ThrowsAsync <ArgumentException>(() => cadastrarCommand.Executar(cadastrarPedidoInputSucesso)); }
public async Task ObterClienteSucesso() { var clienteServiceMock = new ClienteServicoMock(); var clienteServico = clienteServiceMock.ConfigurarObterClientes().Build(); var obterQuery = new ObterClientesQuery(clienteServico); var resultado = await obterQuery.Executar(null); Assert.NotNull(resultado.Clientes); }
public async Task <IEnumerable <ClienteDto> > Handle(ObterClientesQuery request, CancellationToken cancellationToken) { if (request.Pagina < 0) { request.AddNotification("ObterClientesQuery.Pagina", "Pagina deve ser maior que 0."); } if (request.Quantidade < 5) { request.AddNotification("ObterClientesQuery.Quantidade", "Quantidade deve ser maior ou igual que 5."); } if (request.Invalid) { await _mediator.Publish(new DomainNotification { Erros = request.Notifications }, cancellationToken); return(await Task.FromResult(new List <ClienteDto>())); } return(await _clienteDapper.ObterClientes(request.Quantidade, request.Pagina)); }
public async Task <IEnumerable <ObterClientesResult> > Handle(ObterClientesQuery request, CancellationToken cancellationToken) { var result = await _repository.ObterTodos(); return(_mapper.Map <List <ObterClientesResult> >(result)); }