示例#1
0
        public IActionResult Salvar(RequestProduto produto)
        {
            if (_serviceProduto.CadastrarProduto(produto))
            {
                return(Ok());
            }

            return(BadRequest());
        }
示例#2
0
        public async Task <ResponseProduto> ExecuteAsync(RequestProduto produto)
        {
            ProdutoEntity produtoEntity = new ProdutoEntity(produto.Nome);

            var produtoIncluido = await _repoProduto.CriarProduto(produtoEntity);

            if (produtoIncluido.Id == 0)
            {
                _fluntcontext.AddNotification(new Flunt.Notifications.Notification("nome_produto", "produto já existe"));
                return(null);
            }

            return(_mapper.Map <ResponseProduto>(produtoIncluido));
        }
示例#3
0
        public bool CadastrarProduto(RequestProduto p)
        {
            Produto produto = new Produto()
            {
                Nome  = p.Nome,
                Valor = p.Valor
            };

            if (produto.EhValido())
            {
                _produtoRepository.Salvar(produto);
                return(true);
            }

            return(false);
        }
示例#4
0
        public async Task DeveCadastrarProduto(string url)
        {
            var            client = _factory.CreateClient();
            string         resultadoEspererado = "{}";
            RequestProduto produto             = new RequestProduto();

            produto.Nome = "Arroz";
            JsonConvert.SerializeObject(produto);
            HttpRequestMessage request = new HttpRequestMessage();

            request.Content = new StringContent(JsonConvert.SerializeObject(produto), Encoding.UTF8, "application/json");

            var response = await client.PostAsync(url, request.Content);

            response.EnsureSuccessStatusCode(); // Status Code 200-299

            string body = await response.Content.ReadAsStringAsync();

            Assert.Equal(resultadoEspererado, body);
            return;
        }
示例#5
0
        public void DeveriaCadastrarUmNovoProduto()
        {
            //Arrange
            var            ProdutoRepositoryMock = new Mock <IProdutoRepository>();
            ServiceProduto serviceProduto        = new ServiceProduto(ProdutoRepositoryMock.Object);
            var            rp = new RequestProduto()
            {
                Nome = "Bolo", Valor = 5
            };
            Produto produto = new Produto()
            {
                Nome = rp.Nome, Valor = rp.Valor
            };

            ProdutoRepositoryMock.Setup(p => p.Salvar(produto));

            //Act
            var retorno = serviceProduto.CadastrarProduto(rp);

            //Assert
            Assert.True(retorno);
        }
示例#6
0
        public async Task <IActionResult> Post([FromBody] RequestProduto produto)
        {
            var produtoCriado = await _criarProdutoUseCase.ExecuteAsync(produto);

            return(Created("/produtos", produtoCriado));
        }
 public async Task <ResponseProduto> Cadastro([FromServices] IMediator mediator, [Microsoft.AspNetCore.Mvc.FromBody] RequestProduto request)
 {
     return(await mediator.Send(request));
 }