public Produto Inserir(ComandoInserirProduto comando) { if (comando.Valido()) { var novoProduto = new Produto(comando.Codigo, comando.Descricao, comando.Preco); _produtoRepositorio.Inserir(novoProduto); return(_produtoRepositorio.Obter(novoProduto.Id)); } return(new Produto()); }
public ProdutoController(ComandoInserirProduto comandoInserirProduto, ComandoAtualizarProduto comandoAtualizarProduto, ConsultaBuscarTodosProdutos consultaBuscarTodosProdutos, ComandoExcluirProduto comandoExcluirProduto, ProdutoRepositorio repositorio) { _comandoInserirProduto = comandoInserirProduto; _comandoAtualizarProduto = comandoAtualizarProduto; _consultaBuscarTodosProdutos = consultaBuscarTodosProdutos; _comandoExcluirProduto = comandoExcluirProduto; _repositorio = repositorio; }
public async Task Deve_Inserir_Produto() { ComandoInserirProduto novoProduto = GeradorProduto.ComandoNovoProduto(); var response = await _testContext.Client.PostAsJsonAsync("api/produto/", novoProduto); var responseProduto = await response.Content.ReadAsAsync <Produto>(); var produtoFake = ProdutoFake(novoProduto.Codigo, novoProduto.Descricao, novoProduto.Preco); response.StatusCode.Should().Be(HttpStatusCode.OK); responseProduto.Should().BeEquivalentTo(produtoFake, option => option.Excluding(x => x.Id)); }
public IActionResult Inserir([FromBody] ComandoInserirProduto comando) { try { return(new ObjectResult(_produtoServivo.Inserir(comando))); } catch (ArgumentNullException ex) { return(NotFound(ex)); } catch (Exception ex) { return(BadRequest(ex)); } }