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 async Task Deve_Retornar_Produto() { Produto produto = GeradorProduto.NovoProduto(); repositorio.Inserir(produto); var response = await _testContext.Client.GetAsync($"api/produto/{produto.Id}"); var responseProduto = await response.Content.ReadAsAsync <Produto>(); responseProduto.Should().BeEquivalentTo(produto); }
public async Task Deve_Remover_Produto() { Produto produto = GeradorProduto.NovoProduto(); repositorio.Inserir(produto); var response = await _testContext.Client.DeleteAsync($"api/produto/{produto.Id}"); var produtoExcluido = repositorio.Obter(produto.Id); response.StatusCode.Should().Be(HttpStatusCode.OK); produtoExcluido.Should().BeNull(); }
public async Task Deve_Atualizar_Produto() { Produto produtoInserir = GeradorProduto.NovoProduto(); repositorio.Inserir(produtoInserir); var produto = repositorio.Obter(produtoInserir.Id); produto.Codigo += 1; produto.Descricao += "-Atualizar"; produto.Preco += produto.Preco; var response = await _testContext.Client.PutAsJsonAsync("api/produto/", produto); var responseProduto = await response.Content.ReadAsAsync <Produto>(); var produtoFake = ProdutoFake(produto.Codigo, produto.Descricao, produto.Preco); response.StatusCode.Should().Be(HttpStatusCode.OK); responseProduto.Should().BeEquivalentTo(produtoFake, option => option.Excluding(x => x.Id)); }