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);
        }