public void ComoPresidenteQueroVisualizarOsPeladeirosInadimplentesQuandoTodosPagaramOQueDeviam()
        {
            //Arrange
            const decimal mensalidade = 40;
            DateTime      dataInicioDaVigenciaDoCaixa = new DateTime(2015, 1, 1);
            DateTime      dataInicioDeReferenciaParaConsultaDeInadimplentes = new DateTime(2015, 5, 10);


            Time time = new Time("Amigos do Society", new DateTime(2000, 1, 1), new Presida("Marcelo Palladino"));

            time.CriarCaixa(new Caixa("Mensalidades 2015", 40, new VigenciaDoCaixa(dataInicioDaVigenciaDoCaixa, new DateTime(2015, 12, 31))));
            time.CriarPeladeiro(new Peladeiro("João Português", new DateTime(2015, 1, 1)));
            time.CriarPeladeiro(new Peladeiro("Cidão", new DateTime(2015, 1, 1)));

            var caixa = time.Caixas.First();

            caixa.FazerLancamentoDeRecebimento(time.Peladeiros.ElementAt(0), DateTime.Now, 200);
            caixa.FazerLancamentoDeRecebimento(time.Peladeiros.ElementAt(1), DateTime.Now, 200);

            //Act
            ServicoDeConsultaDeInadimplentes servicoDeConsultaDeInadimplentes   = new ServicoDeConsultaDeInadimplentes();
            IDictionary <Caixa, IEnumerable <Peladeiro> > inadimplentesPorCaixa = servicoDeConsultaDeInadimplentes.Consultar(time, dataInicioDeReferenciaParaConsultaDeInadimplentes);

            //Assert
            Assert.IsTrue(inadimplentesPorCaixa.Count == 0);
        }
        public void ComoPresidenteQueroVisualizarOsPeladeirosInadimplentesQuandoJogadorComecouDepoisDoInicioDaVigenciaDoCaixa()
        {
            //Arrange
            Time time = new Time("Amigos do Society", new DateTime(2000, 1, 1), new Presida("Marcelo Palladino"));

            time.CriarCaixa(new Caixa("Mensalidades 2015", 40, new VigenciaDoCaixa(new DateTime(2015, 1, 1), new DateTime(2015, 12, 31))));
            time.CriarPeladeiro(new Peladeiro("João Português", new DateTime(2015, 2, 1)));
            time.CriarPeladeiro(new Peladeiro("Cidão", new DateTime(2015, 1, 1)));

            var caixa = time.Caixas.First();

            caixa.FazerLancamentoDeRecebimento(time.Peladeiros.First(), DateTime.Now, 160); //o jogador começou em fevereiro

            //Act
            ServicoDeConsultaDeInadimplentes servicoDeConsultaDeInadimplentes   = new ServicoDeConsultaDeInadimplentes();
            IDictionary <Caixa, IEnumerable <Peladeiro> > inadimplentesPorCaixa = servicoDeConsultaDeInadimplentes.Consultar(time, new DateTime(2015, 5, 10));

            //Assert
            Assert.IsTrue(inadimplentesPorCaixa.Count == 1);
            Assert.IsTrue(inadimplentesPorCaixa.First().Value.Count() == 1);
        }