public void DeveMarcarFaturaComoPagaCasoBoletoUnicoPagueTudo() { ProcessadorDeBoletos processador = new ProcessadorDeBoletos(); Fatura fatura = new Fatura("Cliente", 150.0m); Boleto b1 = new Boleto(150.1m); List <Boleto> boletos = new List <Boleto> { b1 }; processador.Processa(boletos, fatura); Assert.True(fatura.EstaPaga()); }
public void DeveProcessarPagamentoViaBoletoUnico() { ProcessadorDeBoletos processador = new ProcessadorDeBoletos(); Fatura fatura = new Fatura("Cliente", 150.0m); Boleto b1 = new Boleto(150.0m); List <Boleto> boletos = new List <Boleto> { b1 }; processador.Processa(boletos, fatura); Assert.Equal(1, fatura.Pagamentos.Count()); Assert.Equal(150.0m, fatura.Pagamentos.First().Valor); }
public void DeveProcessarPagamentoViaMuitosBoletos() { ProcessadorDeBoletos processador = new ProcessadorDeBoletos(); Fatura fatura = new Fatura("Cliente", 300.0m); Boleto b1 = new Boleto(100.0m); Boleto b2 = new Boleto(200.0m); List <Boleto> boletos = new List <Boleto> { b1, b2 }; processador.Processa(boletos, fatura); Assert.Equal(2, fatura.Pagamentos.Count()); Assert.Equal(100.0m, fatura.Pagamentos.ElementAt(0).Valor); Assert.Equal(200.0m, fatura.Pagamentos.ElementAt(1).Valor); }