public void VerificarAlteracaoValorIncorreto() { var pBiscoito = new Produto("Biscoito", 10.5); Exception ex = Assert.Throws<InvalidOperationException>(() => pBiscoito.MudarValor(-1)); Assert.NotNull(ex); }
public Produto Persistir(Produto modelo) { try { AssertionConcern.AssertArgumentNotNull(modelo, "Produto não preenchdo."); modelo.DtCadastro = DateTime.Now; modelo.ValidarAtributos(); AssertionConcern.AssertArgumentFalse(_repositorioProduto.ProdutoJaExiste(modelo.Nome), "Produto com o mesmo nome já cadastrado na base"); var criado = _repositorioProduto.Persistir(modelo); _repositorioProduto.ConfirmarAlteracoes(); return criado; } catch (Exception e) { throw new Exception($"Não foi possível criar o cliente.\n{e.Message}"); } }
public void Atualizar(Produto modelo) { AssertionConcern.AssertArgumentNotNull(modelo, "Produto não preenchido."); AssertionConcern.AssertArgumentMinimum(modelo.ProdutoID, 1, "Produto desconhecido não pôde ser atualizado"); modelo.ValidarAtributos(); var produto = _repositorioProduto.BuscarPorID(modelo.ProdutoID); AssertionConcern.AssertArgumentNotNull(produto, "Produto desconhecido não pôde ser atualizado"); produto.MudarNome(modelo.Nome); produto.MudarValor(modelo.Valor); try { _repositorioProduto.Atualizar(produto); _repositorioProduto.ConfirmarAlteracoes(); } catch (Exception e) { throw new Exception($"Cliente não pôde ser atualizado.\n{e.Message}"); } }