public void PromocaoValidaExedTest() { var produto = new Produto() { CompraMaxima = 3, Descricao = "Prod Test", Id = 1, Valor = 50 }; var promocao = new Promocao { Id = 1, Desconto = 0, DescontoMaximo = true, ItemDesconto = produto, ItensAtivadores = new PromocaoItem[] { new PromocaoItem { Id = 1, Item = produto, Quantidade = 2 } }, RepetirPromocao = false }; var comanda = new Comanda() { Id = 1 }; comanda.AddItem(produto); comanda.AddItem(produto); comanda.AddItem(produto); var promValid = promocao.PromocaoValida(comanda); Assert.True(promValid, "Promoção valida com mais itens que o necessário"); }
public void AddItemAumQuantTest() { var produto = new Produto() { CompraMaxima = 3, Descricao = "Prod Test", Id = 1, Valor = 50 }; var comanda = new Comanda() { Id = 1 }; comanda.AddItem(produto); comanda.AddItem(produto); Assert.True(comanda.Valid, "Comanda segue valida"); Assert.True(comanda.Itens.Count == 1, "Adicionado o item na lista"); Assert.True(comanda.Itens.First().Quantidade == 2, "Adicionado a quantidade"); }
public void Repetir2Vezes2ProdTest() { var produto = new Produto() { Descricao = "Prod Test", Id = 1, Valor = 50 }; var produto2 = new Produto() { Descricao = "Prod Test 2", Id = 2, Valor = 50 }; var promocao = new Promocao { Id = 1, Desconto = 0, DescontoMaximo = true, ItemDesconto = produto, ItensAtivadores = new PromocaoItem[] { new PromocaoItem { Id = 1, Item = produto, Quantidade = 2 }, new PromocaoItem { Id = 2, Item = produto2, Quantidade = 1 } }, RepetirPromocao = true }; var comanda = new Comanda() { Id = 1 }; comanda.AddItem(produto); comanda.AddItem(produto); comanda.AddItem(produto); comanda.AddItem(produto); comanda.AddItem(produto2); comanda.AddItem(produto2); var promValid = promocao.PromocaoValida(comanda); var repetir = promocao.RepetirXVezes(comanda); Assert.True(promocao.Valid, "Promoção valida"); Assert.True(promValid, "Promoção pode ser aplicada"); Assert.Equal(2, repetir); }
public void AplicarPromoAguaComAgua2Test() { var produto = new Produto() { Descricao = "Prod Test", Id = 1, Valor = 5 }; var produto2 = new Produto() { Descricao = "Prod Test2", Id = 2, Valor = 20 }; var produto3 = new Produto() { Descricao = "Prod Test3", Id = 3, Valor = 70 }; var promocao = new Promocao { Id = 1, Desconto = 0, DescontoMaximo = true, ItemDesconto = produto3, ItensAtivadores = new PromocaoItem[] { new PromocaoItem { Id = 1, Item = produto, Quantidade = 2 }, new PromocaoItem { Id = 2, Item = produto2, Quantidade = 3 } }, RepetirPromocao = false }; var comanda = new Comanda() { Id = 1 }; comanda.AddItem(produto); comanda.AddItem(produto); comanda.AddItem(produto2); comanda.AddItem(produto2); comanda.AddItem(produto2); comanda.AddItem(produto3); comanda.AddItem(produto3); comanda.AplicarPromo(promocao); Assert.Equal(140, comanda.Itens.Sum(x => x.ValorTotal)); }