public void iniciar_construtor_com_sucesso()
        {
            OrcamentoOperacionalVersao despesaOperacional = new OrcamentoOperacionalVersao(new Setor("setor"), new CentroDeCusto("centro de custo"), 2014);

            Assert.NotNull(despesaOperacional.Setor, "Setor não informado");
            Assert.NotNull(despesaOperacional.CentroDeCusto, "Centro de Custo não informado");
            Assert.Greater(despesaOperacional.Ano,0,"Ano do orcamento nao informada");
        }
        public void OrcamentoOperacionalCriadoDeveTerSetorDiferenteDeNulo()
        {
            var setor = new Setor("TI");
            var centroDeCusto = new CentroDeCusto("Gerenciamento de Projetos");
            var RecursosExternos = new Conta("Recursos Externos", new TipoConta { Id = (int)TipoContaEnum.Outros });
            centroDeCusto.AdicionarConta(RecursosExternos);
            setor.AdicionarCentroDeCusto(centroDeCusto);

            var orcamento = new OrcamentoOperacionalVersao(setor, centroDeCusto, 2014);

            Assert.NotNull(orcamento.Setor);
        }
        public void CriarDespesasComUmCentroDeCustoComUmaContaDeveTerDespesasIguamADoze()
        {
            var setor = new Setor("TI");
            var centroDeCusto = new CentroDeCusto("Gerenciamento de Projetos");
            var RecursosExternos = new Conta("Recursos Externos", new TipoConta { Id = (int)TipoContaEnum.Outros });
            centroDeCusto.AdicionarConta(RecursosExternos);
            setor.AdicionarCentroDeCusto(centroDeCusto);

            var orcamento = new OrcamentoOperacionalVersao(setor, centroDeCusto, 2014);

            orcamento.CriarDespesas();
            Assert.IsTrue(orcamento.DespesasOperacionais.Count == 12);
        }
        public void AtribuirVersaoFinalComSucesso()
        {
            ServicoOrcamentoOperacionalVersao servico = new ServicoOrcamentoOperacionalVersao();
            IOrcamentos orcamentos = MockRepository.GenerateMock<IOrcamentos>();
            orcamentos.Expect(o => o.Salvar(null)).IgnoreArguments();
            orcamentos.Expect(o => o.ObterOrcamentoFinalOrcamentoOperacional(null,null)).IgnoreArguments().Return(null);
            servico.Orcamentos = orcamentos;
            Departamento departamento = new Hospital("Barra dor");

            var orcamento = new OrcamentoOperacionalVersao(departamento, new CentroDeCusto("centroDeCusto"), 2014);

            Despesa despesa = new Despesa(MesEnum.Janeiro, null);
            despesa.Valor = 10;

            orcamento.DespesasOperacionais.Add(despesa);

            servico.AtribuirVersaoFinal(orcamento);

            Assert.IsTrue(orcamento.VersaoFinal);
        }
        public void DeletarOrcamentoComDoisOrcamentosNaListaPrimeiroItemDaListaDeveTerNomeDeVersaoUm()
        {
            ServicoOrcamentoOperacionalVersao servico = new ServicoOrcamentoOperacionalVersao();
            IOrcamentos orcamentos = MockRepository.GenerateMock<IOrcamentos>();
            orcamentos.Expect(o => o.Salvar(null)).IgnoreArguments();
            orcamentos.Expect(o => o.Deletar(null)).IgnoreArguments();
            servico.Orcamentos = orcamentos;

            Departamento departamento = new Setor("Barra dor");
            CentroDeCusto centroDeCusto = new CentroDeCusto("centroDeCusto");
            departamento.AdicionarCentroDeCusto(centroDeCusto);

            var orcamento = new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014);

            var orcamentosLista = new List<Orcamento.Domain.Orcamento>();
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(orcamento);
            servico.DeletarOrcamento(orcamento, orcamentosLista, departamento);

            Assert.IsTrue(orcamentosLista.FirstOrDefault().NomeOrcamento == "Versão1");
        }
        public void DeletarOrcamentoComDoisOrcamentosNaListaDeveRetornarApenasCountUm()
        {
            ServicoOrcamentoOperacionalVersao servico = new ServicoOrcamentoOperacionalVersao();
            IOrcamentos orcamentos = MockRepository.GenerateMock<IOrcamentos>();
            orcamentos.Expect(o => o.Salvar(null)).IgnoreArguments();
            orcamentos.Expect(o => o.Deletar(null)).IgnoreArguments();
            servico.Orcamentos = orcamentos;

            Departamento departamento = new Setor("Barra dor");
            CentroDeCusto centroDeCusto = new CentroDeCusto("centroDeCusto");
            departamento.AdicionarCentroDeCusto(centroDeCusto);

            var orcamento = new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014);

            var orcamentosLista = new List<Orcamento.Domain.Orcamento>();
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(orcamento);
            servico.DeletarOrcamento(orcamento, orcamentosLista, departamento);

            Assert.IsTrue(orcamentosLista.Count == 1);
        }
        public void DeletarOrcamentoComDezOrcamentosNaListaDeveRetornarNomesDosORcamentosComSequenciaCerta()
        {
            ServicoOrcamentoOperacionalVersao servico = new ServicoOrcamentoOperacionalVersao();
            IOrcamentos orcamentos = MockRepository.GenerateMock<IOrcamentos>();
            orcamentos.Expect(o => o.Salvar(null)).IgnoreArguments();
            orcamentos.Expect(o => o.Deletar(null)).IgnoreArguments();
            servico.Orcamentos = orcamentos;

            Departamento departamento = new Setor("Barra dor");
            CentroDeCusto centroDeCusto = new CentroDeCusto("centroDeCusto");
            departamento.AdicionarCentroDeCusto(centroDeCusto);

            var orcamento = new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014);

            var orcamentosLista = new List<Orcamento.Domain.Orcamento>();
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(new OrcamentoOperacionalVersao(departamento, centroDeCusto, 2014));
            orcamentosLista.Add(orcamento);
            servico.DeletarOrcamento(orcamento, orcamentosLista, departamento);
            for (int i = 0; i < orcamentosLista.Count; i++)
            {
                Assert.AreEqual(orcamentosLista[i].NomeOrcamento, "Versão" + (i + 1).ToString());
            }
        }
 public virtual void Salvar(OrcamentoOperacionalVersao orcamento)
 {
     base.Salvar(orcamento);
 }