public void AlterarNome(string nome) { ValidadorDeRegras.Novo() .Quando(string.IsNullOrEmpty(nome), Resource.NomeInvalido) .DispararExcecaoSeExistir(); Nome = nome; }
public TipoDeCerveja Converter(string tipoDeCerveja) { ValidadorDeRegras.Novo() .Quando(!Enum.TryParse <TipoDeCerveja>(tipoDeCerveja, out var tipoDeCervejaConvertido), Resource.TipoDeCervejaInválida).DispararExcecaoSeExistir(); return(tipoDeCervejaConvertido); }
public void AlterarQuantidade(int quantidadeEsperada) { ValidadorDeRegras.Novo() .Quando(quantidadeEsperada < 0, Resource.QuantidadeInvalida) .DispararExcecaoSeExistir(); Quantidade = quantidadeEsperada; }
public void DecrementarQuantidade(int quantidadeASerReduzida) { ValidadorDeRegras.Novo() .Quando(Quantidade < Quantidade - quantidadeASerReduzida || Quantidade - quantidadeASerReduzida < 0, Resource.QuantidadeReduzidaEhInvalida) .DispararExcecaoSeExistir(); Quantidade -= quantidadeASerReduzida; }
public void IncrementarQuantidade(int quantidadeASerAdicionada) { ValidadorDeRegras.Novo() .Quando(Quantidade > Quantidade + quantidadeASerAdicionada, Resource.QuantidadeAdicionadaEhInvalida) .DispararExcecaoSeExistir(); Quantidade += quantidadeASerAdicionada; }
public Pedido(Cerveja cerveja, int quantidade) { ValidadorDeRegras.Novo() .Quando(quantidade < 0, Resource.QuantidadeInvalida) .DispararExcecaoSeExistir(); Cerveja = cerveja; Quantidade = quantidade; Valor = cerveja.Preco * quantidade; }
public void ValidarVenda(List <Lote> lotesComACervejaDesejada, Pedido pedido) { var quantidadeTotalQueSeTemNosLotes = 0; lotesComACervejaDesejada.ForEach(lote => quantidadeTotalQueSeTemNosLotes += lote.Quantidade); ValidadorDeRegras.Novo() .Quando(quantidadeTotalQueSeTemNosLotes < pedido.Quantidade, Resource.QuantidadeIndisponivel) .DispararExcecaoSeExistir(); }
public Lote(Cerveja cerveja, int quantidade) { ValidadorDeRegras.Novo() .Quando(quantidade < 0, Resource.QuantidadeInvalida) .Quando(cerveja == null, Resource.CervejaInvalida) .DispararExcecaoSeExistir(); Cerveja = cerveja; Quantidade = quantidade; Identificador = DateTime.Now.ToString("yyyyMMdd"); }
public Cerveja(string nome, double preco, string descricao, TipoDeCerveja tipo) { ValidadorDeRegras.Novo() .Quando(preco <= 0, Resource.PrecoInvalido) .Quando(string.IsNullOrEmpty(nome), Resource.NomeInvalido) .DispararExcecaoSeExistir(); Nome = nome; Preco = preco; Descricao = descricao; Tipo = tipo; }
public Comanda(List <Pedido> pedidos) { //TODO como fazer o InlineData receber uma lista vazia? ValidadorDeRegras.Novo() .Quando(pedidos.Count == 0, Resource.ComandaSemPedidos) .DispararExcecaoSeExistir(); Pedidos = pedidos; ValorTotal = 0; pedidos.ForEach(pedido => ValorTotal += pedido.Valor); }