public void Deve_Adicionar_Atualizar_E_Deletar_Produto()
        {
            var options = new DbContextOptionsBuilder <OficinaPitStopContext>()
                          .UseInMemoryDatabase("Testes_Modifica_Produto")
                          .Options;

            using (var context = new OficinaPitStopContext(options))
            {
                //Cria
                var produtoRepository = new ProdutoRepository(context);
                var produto           = CriaProduto(1);
                var retornoAdiciona   = produtoRepository.Adiciona(produto);
                Assert.True(retornoAdiciona);

                var retornoPorId = produtoRepository.ObterPorId(produto.Codigo);
                Assert.Equal(retornoPorId, produto);
                Assert.Equal(produto.Preco, retornoPorId.Preco);
                Assert.Equal(produto.Quantidade, retornoPorId.Quantidade);

                //Atualiza
                var descricaoAntigaProduto = retornoPorId.Descricao;
                var novaDescricaoProduto   = "Nova descrição produto!";
                produto.Descricao = novaDescricaoProduto;
                var retornoAtualiza = produtoRepository.Atualiza(produto);
                Assert.True(retornoAtualiza);
                retornoPorId = produtoRepository.ObterPorId(produto.Codigo);

                Assert.NotEqual(descricaoAntigaProduto, retornoPorId.Descricao);
                Assert.Equal(novaDescricaoProduto, retornoPorId.Descricao);

                //Deleta
                var retornoDelete = produtoRepository.Deleta(produto);
                Assert.True(retornoDelete);

                retornoPorId = produtoRepository.ObterPorId(produto.Codigo);
                Assert.Null(retornoPorId);
            }
        }