Esempio n. 1
0
        public void TestarAlterarAsConfiguracoesDoCicloDeDesenvolvimentoDeUmProjeto()
        {
            /**
             * Cenário 4: Será criado um projeto com uma parte interessada
             * Comentários a seguir
             */

            Projeto projetoA = ProjetoFactory.Criar(SessionTest, 100, "", false);

            //Passo 1

            projetoA.DtInicioReal           = new DateTime(2011, 04, 25);
            projetoA.NbCicloTotalPlan       = 5;
            projetoA.NbCicloDuracaoDiasPlan = 10;
            projetoA.NbCicloDiasIntervalo   = 1;
            projetoA.Save();

            Assert.AreEqual(new DateTime(2011, 07, 07), projetoA._DtTerminoReal, "A data de termino deveria ser 07/07/2011");

            //Passo 2

            projetoA.DtInicioReal           = new DateTime(2011, 04, 25);
            projetoA.NbCicloTotalPlan       = 6;
            projetoA.NbCicloDuracaoDiasPlan = 10;
            projetoA.NbCicloDiasIntervalo   = 1;
            projetoA.Save();

            Assert.AreEqual(new DateTime(2011, 07, 22), projetoA._DtTerminoReal, "A data de termino deveria ser 22/07/2011");

            //Passo 3

            projetoA.DtInicioReal           = new DateTime(2011, 04, 25);
            projetoA.NbCicloTotalPlan       = 6;
            projetoA.NbCicloDuracaoDiasPlan = 20;
            projetoA.NbCicloDiasIntervalo   = 1;
            projetoA.Save();

            Assert.AreEqual(new DateTime(2011, 10, 14), projetoA._DtTerminoReal, "A data de termino deveria ser 14/10/2011");

            //Passo 4

            Calendario calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                                  CsCalendarioDomain.Trabalho, 01, CsMesDomain.Maio, 2011, true);

            //projetoA._AlteradoCiclo = true;
            projetoA.DtInicioReal           = new DateTime(2011, 04, 25);
            projetoA.NbCicloTotalPlan       = 6;
            projetoA.NbCicloDuracaoDiasPlan = 20;
            projetoA.NbCicloDiasIntervalo   = 1;

            projetoA.Save();


            Assert.AreEqual(new DateTime(2011, 10, 13), projetoA._DtTerminoReal, "A data de termino deveria ser 13/10/2011");

            //Passo 5

            calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                       CsCalendarioDomain.Folga, 02, CsMesDomain.Maio, 2011, true);

            projetoA.DtInicioReal           = new DateTime(2011, 04, 25);
            projetoA.NbCicloTotalPlan       = 6;
            projetoA.NbCicloDuracaoDiasPlan = 20;
            projetoA.NbCicloDiasIntervalo   = 1;
            //projetoA._AlteradoCiclo = true;
            projetoA.Save();

            Assert.AreEqual(new DateTime(2011, 10, 14), projetoA._DtTerminoReal, "A data de termino deveria ser 14/10/2011 ");

            //Passo 6
            projetoA.DtInicioReal           = new DateTime(2011, 04, 25);
            projetoA.NbCicloTotalPlan       = 4;
            projetoA.NbCicloDuracaoDiasPlan = 20;
            projetoA.NbCicloDiasIntervalo   = 1;
            projetoA.Save();

            Assert.AreEqual(new DateTime(2011, 08, 17), projetoA._DtTerminoReal, "A data de termino deveria ser 18/18/2011");
        }
Esempio n. 2
0
        public void Test_eFi_Crono33()
        {
            const string RESTRICAO = "CalendarioConflitante";

            CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest, CsCalendarioDomain.Folga,
                                                        new DateTime(2010, 11, 15), new DateTime(2010, 11, 20), true);

            /**
             * Cenário1:
             * Serão criados calendários conflitantes por período.
             * O sistema deve rejeitá-los.
             */

            Calendario calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest,
                                                                                CsCalendarioDomain.Folga, new DateTime(2010, 11, 15), new DateTime(2010, 11, 16));

            Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(calendario,
                                                                                 RESTRICAO, DefaultContexts.Save));

            calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest,
                                                                     CsCalendarioDomain.Trabalho, new DateTime(2010, 11, 20), new DateTime(2010, 11, 25));

            Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(calendario,
                                                                                 RESTRICAO, DefaultContexts.Save));

            calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest,
                                                                     CsCalendarioDomain.Trabalho, new DateTime(2010, 11, 16), new DateTime(2010, 11, 19));

            Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(calendario,
                                                                                 RESTRICAO, DefaultContexts.Save));

            /**
             * Cenário2:
             * Será criado um calendário por dia do ano específico, conflitando
             * com um calendário de período existente. O sistema deve rejeitar.
             */

            calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                       CsCalendarioDomain.Trabalho, 20, CsMesDomain.Novembro, 2010);

            Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(calendario,
                                                                                 RESTRICAO, DefaultContexts.Save));

            /**
             * Cenário3:
             * Será criado um calendário por dia do ano específico, não
             * conflitante com o calendário de período existente mas conflitante
             * com um calendario para um dia especifico. O sistema
             * deve rejeitar.
             */

            calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                       CsCalendarioDomain.Trabalho, 21, CsMesDomain.Novembro, 2010, true);

            Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario,
                                                                               RESTRICAO, DefaultContexts.Save));


            calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                       CsCalendarioDomain.Trabalho, 21, CsMesDomain.Novembro, 2010);

            Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(calendario,
                                                                                 RESTRICAO, DefaultContexts.Save));

            /**
             * Cenário4:
             * - Será criado um calendário por dia e mês, não conflitante com os
             *   calendários existentes. O sistema deve aceitar.
             * - Em seguida, será criado um outro calendário por dia e mês conflitante.
             *   O sistema deve rejeitar.
             */

            calendario = CalendarioFactory.CriarCalendarioPorDiaMes(SessionTest,
                                                                    CsCalendarioDomain.Trabalho, 23, CsMesDomain.Novembro);

            Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario,
                                                                               RESTRICAO, DefaultContexts.Save));

            calendario.Save();

            calendario = CalendarioFactory.CriarCalendarioPorDiaMes(SessionTest,
                                                                    CsCalendarioDomain.Trabalho, 23, CsMesDomain.Novembro);

            Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(calendario,
                                                                                 RESTRICAO, DefaultContexts.Save));

            /**
             * Cenário5:
             * - Será criado um calendário por dia, mês e ano, conflitante com os
             *   calendários por dia e mês existente. O sistema deve aceitar pois dará
             *   prioridade ao calendário por dia mês e ano.
             */

            calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                       CsCalendarioDomain.Trabalho, 23, CsMesDomain.Novembro, 2010);

            Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario,
                                                                               RESTRICAO, DefaultContexts.Save));

            calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest,
                                                                     CsCalendarioDomain.Trabalho, new DateTime(2010, 11, 23), new DateTime(2010, 11, 23));

            Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario,
                                                                               RESTRICAO, DefaultContexts.Save));
        }
Esempio n. 3
0
        public void TestarSalvarUmProjetoParaCriarOuAtualizarOsCiclosDeDesenvolvimento()
        {
            /**
             * Cenário 6: Será criado um projetoA.
             * Serão criados ciclos automaticamente quando os ciclos do projeto forem calculados
             */

            Projeto     projetoA     = ProjetoFactory.Criar(SessionTest, 30, "", false);
            Modulo      moduloA      = ModuloFactory.Criar(SessionTest, projetoA, "", false);
            Beneficiado beneficiadoA = BeneficiadoFactory.Criar(SessionTest, "", true);
            Estoria     estoriaA     = EstoriaFactory.Criar(SessionTest, moduloA, "", "", "", beneficiadoA, "", "", "", true);

            // CicloDesenv ciclo01 = CicloFactory.Criar(SessionTest, projetoA, "", false);

            //Passo 1

            projetoA.DtInicioPlan           = new DateTime(2011, 04, 25);
            projetoA.DtInicioReal           = new DateTime(2011, 04, 25);
            projetoA.DtTerminoPlan          = new DateTime(2011, 05, 31);
            projetoA.NbCicloTotalPlan       = 5;
            projetoA.NbCicloDuracaoDiasPlan = 10;
            projetoA.NbCicloDiasIntervalo   = 1;

            projetoA.Save();

            Assert.AreEqual(1, projetoA.Ciclos[0].NbCiclo, "O ciclo deveria ser 1");
            Assert.AreEqual(new DateTime(2011, 04, 25), projetoA.Ciclos[0].DtInicio, "O valor de inicio deveria ser 25/04/2011");
            Assert.AreEqual(new DateTime(2011, 05, 06), projetoA.Ciclos[0].DtTermino, "O valor de término deveria ser 06/05/2011");

            Assert.AreEqual(2, projetoA.Ciclos[1].NbCiclo, "O ciclo deveria ser 2");
            Assert.AreEqual(new DateTime(2011, 05, 10), projetoA.Ciclos[1].DtInicio, "O valor de inicio deveria ser 10/05/2011");
            Assert.AreEqual(new DateTime(2011, 05, 23), projetoA.Ciclos[1].DtTermino, "O valor de término deveria ser 23/05/2011");

            Assert.AreEqual(3, projetoA.Ciclos[2].NbCiclo, "O ciclo deveria ser 3");
            Assert.AreEqual(new DateTime(2011, 05, 25), projetoA.Ciclos[2].DtInicio, "O valor de inicio deveria ser 25/05/2011");
            Assert.AreEqual(new DateTime(2011, 06, 07), projetoA.Ciclos[2].DtTermino, "O valor de término deveria ser 07/06/2011");

            Assert.AreEqual(4, projetoA.Ciclos[3].NbCiclo, "O ciclo deveria ser 4");
            Assert.AreEqual(new DateTime(2011, 06, 09), projetoA.Ciclos[3].DtInicio, "O valor de inicio deveria ser 09/06/2011");
            Assert.AreEqual(new DateTime(2011, 06, 22), projetoA.Ciclos[3].DtTermino, "O valor de término deveria ser 22/06/2011");

            Assert.AreEqual(5, projetoA.Ciclos[4].NbCiclo, "O ciclo deveria ser 5");
            Assert.AreEqual(new DateTime(2011, 06, 24), projetoA.Ciclos[4].DtInicio, "O valor de inicio deveria ser 24/06/2011");
            Assert.AreEqual(new DateTime(2011, 07, 07), projetoA.Ciclos[4].DtTermino, "O valor de término deveria ser 07/07/2011");

            //Passo 2

            projetoA.NbCicloTotalPlan = 6;
            projetoA.Save();

            Assert.AreEqual(6, projetoA.Ciclos[5].NbCiclo, "O ciclo deveria ser 6");
            Assert.AreEqual(new DateTime(2011, 07, 11), projetoA.Ciclos[5].DtInicio, "O valor de inicio deveria ser 11/07/2011");
            Assert.AreEqual(new DateTime(2011, 07, 22), projetoA.Ciclos[5].DtTermino, "O valor de término deveria ser 22/07/2011");


            //Passo 3

            projetoA.NbCicloDuracaoDiasPlan = 20;
            projetoA.Save();

            Assert.AreEqual(1, projetoA.Ciclos[0].NbCiclo, "O ciclo deveria ser 1");
            Assert.AreEqual(new DateTime(2011, 04, 25), projetoA.Ciclos[0].DtInicio, "O valor de inicio deveria ser 25/04/2011");
            Assert.AreEqual(new DateTime(2011, 05, 20), projetoA.Ciclos[0].DtTermino, "O valor de término deveria ser 20/05/2011");

            Assert.AreEqual(2, projetoA.Ciclos[1].NbCiclo, "O ciclo deveria ser 2");
            Assert.AreEqual(new DateTime(2011, 05, 24), projetoA.Ciclos[1].DtInicio, "O valor de inicio deveria ser 24/05/2011");
            Assert.AreEqual(new DateTime(2011, 06, 20), projetoA.Ciclos[1].DtTermino, "O valor de término deveria ser 20/06/2011");

            Assert.AreEqual(3, projetoA.Ciclos[2].NbCiclo, "O ciclo deveria ser 3");
            Assert.AreEqual(new DateTime(2011, 06, 22), projetoA.Ciclos[2].DtInicio, "O valor de inicio deveria ser 22/06/2011");
            Assert.AreEqual(new DateTime(2011, 07, 19), projetoA.Ciclos[2].DtTermino, "O valor de término deveria ser 19/07/2011");

            Assert.AreEqual(4, projetoA.Ciclos[3].NbCiclo, "O ciclo deveria ser 4");
            Assert.AreEqual(new DateTime(2011, 07, 21), projetoA.Ciclos[3].DtInicio, "O valor de inicio deveria ser 21/07/2011");
            Assert.AreEqual(new DateTime(2011, 08, 17), projetoA.Ciclos[3].DtTermino, "O valor de término deveria ser 17/08/2011");

            Assert.AreEqual(5, projetoA.Ciclos[4].NbCiclo, "O ciclo deveria ser 5");
            Assert.AreEqual(new DateTime(2011, 08, 19), projetoA.Ciclos[4].DtInicio, "O valor de inicio deveria ser 19/08/2011");
            Assert.AreEqual(new DateTime(2011, 09, 15), projetoA.Ciclos[4].DtTermino, "O valor de término deveria ser 15/09/2011");

            Assert.AreEqual(6, projetoA.Ciclos[5].NbCiclo, "O ciclo deveria ser 6");
            Assert.AreEqual(new DateTime(2011, 09, 19), projetoA.Ciclos[5].DtInicio, "O valor de inicio deveria ser 19/09/2011");
            Assert.AreEqual(new DateTime(2011, 10, 14), projetoA.Ciclos[5].DtTermino, "O valor de término deveria ser 14/10/2011");

            //Passo 4

            Calendario calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                                  CsCalendarioDomain.Trabalho, 01, CsMesDomain.Maio, 2011, true);

            //projetoA._AlteradoCiclo = true;
            projetoA.Save();

            Assert.AreEqual(1, projetoA.Ciclos[0].NbCiclo, "O ciclo deveria ser 1");
            Assert.AreEqual(new DateTime(2011, 04, 25), projetoA.Ciclos[0].DtInicio, "O valor de inicio deveria ser 25/04/2011");
            Assert.AreEqual(new DateTime(2011, 05, 19), projetoA.Ciclos[0].DtTermino, "O valor de término deveria ser 19/05/2011");

            Assert.AreEqual(2, projetoA.Ciclos[1].NbCiclo, "O ciclo deveria ser 2");
            Assert.AreEqual(new DateTime(2011, 05, 23), projetoA.Ciclos[1].DtInicio, "O valor de inicio deveria ser 23/05/2011");
            Assert.AreEqual(new DateTime(2011, 06, 17), projetoA.Ciclos[1].DtTermino, "O valor de término deveria ser 17/06/2011");

            Assert.AreEqual(3, projetoA.Ciclos[2].NbCiclo, "O ciclo deveria ser 3");
            Assert.AreEqual(new DateTime(2011, 06, 21), projetoA.Ciclos[2].DtInicio, "O valor de inicio deveria ser 21/06/2011");
            Assert.AreEqual(new DateTime(2011, 07, 18), projetoA.Ciclos[2].DtTermino, "O valor de término deveria ser 18/07/2011");

            Assert.AreEqual(4, projetoA.Ciclos[3].NbCiclo, "O ciclo deveria ser 4");
            Assert.AreEqual(new DateTime(2011, 07, 20), projetoA.Ciclos[3].DtInicio, "O valor de inicio deveria ser 20/07/2011");
            Assert.AreEqual(new DateTime(2011, 08, 16), projetoA.Ciclos[3].DtTermino, "O valor de término deveria ser 16/08/2011");

            Assert.AreEqual(5, projetoA.Ciclos[4].NbCiclo, "O ciclo deveria ser 5");
            Assert.AreEqual(new DateTime(2011, 08, 18), projetoA.Ciclos[4].DtInicio, "O valor de inicio deveria ser 18/08/2011");
            Assert.AreEqual(new DateTime(2011, 09, 14), projetoA.Ciclos[4].DtTermino, "O valor de término deveria ser 14/09/2011");

            Assert.AreEqual(6, projetoA.Ciclos[5].NbCiclo, "O ciclo deveria ser 6");
            Assert.AreEqual(new DateTime(2011, 09, 16), projetoA.Ciclos[5].DtInicio, "O valor de inicio deveria ser 19/09/2011");
            Assert.AreEqual(new DateTime(2011, 10, 13), projetoA.Ciclos[5].DtTermino, "O valor de término deveria ser 14/10/2011");

            //Passo 5

            calendario = CalendarioFactory.CriarCalendarioPorDiaMesAno(SessionTest,
                                                                       CsCalendarioDomain.Folga, 02, CsMesDomain.Maio, 2011, true);
            //projetoA._AlteradoCiclo = true;
            projetoA.Save();

            Assert.AreEqual(1, projetoA.Ciclos[0].NbCiclo, "O ciclo deveria ser 1");
            Assert.AreEqual(new DateTime(2011, 04, 25), projetoA.Ciclos[0].DtInicio, "O valor de inicio deveria ser 25/04/2011");
            Assert.AreEqual(new DateTime(2011, 05, 20), projetoA.Ciclos[0].DtTermino, "O valor de término deveria ser 20/05/2011");

            Assert.AreEqual(2, projetoA.Ciclos[1].NbCiclo, "O ciclo deveria ser 2");
            Assert.AreEqual(new DateTime(2011, 05, 24), projetoA.Ciclos[1].DtInicio, "O valor de inicio deveria ser 24/05/2011");
            Assert.AreEqual(new DateTime(2011, 06, 20), projetoA.Ciclos[1].DtTermino, "O valor de término deveria ser 20/06/2011");

            Assert.AreEqual(3, projetoA.Ciclos[2].NbCiclo, "O ciclo deveria ser 3");
            Assert.AreEqual(new DateTime(2011, 06, 22), projetoA.Ciclos[2].DtInicio, "O valor de inicio deveria ser 22/06/2011");
            Assert.AreEqual(new DateTime(2011, 07, 19), projetoA.Ciclos[2].DtTermino, "O valor de término deveria ser 19/07/2011");

            Assert.AreEqual(4, projetoA.Ciclos[3].NbCiclo, "O ciclo deveria ser 4");
            Assert.AreEqual(new DateTime(2011, 07, 21), projetoA.Ciclos[3].DtInicio, "O valor de inicio deveria ser 21/07/2011");
            Assert.AreEqual(new DateTime(2011, 08, 17), projetoA.Ciclos[3].DtTermino, "O valor de término deveria ser 17/08/2011");

            Assert.AreEqual(5, projetoA.Ciclos[4].NbCiclo, "O ciclo deveria ser 5");
            Assert.AreEqual(new DateTime(2011, 08, 19), projetoA.Ciclos[4].DtInicio, "O valor de inicio deveria ser 19/08/2011");
            Assert.AreEqual(new DateTime(2011, 09, 15), projetoA.Ciclos[4].DtTermino, "O valor de término deveria ser 15/09/2011");

            Assert.AreEqual(6, projetoA.Ciclos[5].NbCiclo, "O ciclo deveria ser 6");
            Assert.AreEqual(new DateTime(2011, 09, 19), projetoA.Ciclos[5].DtInicio, "O valor de inicio deveria ser 19/09/2011");
            Assert.AreEqual(new DateTime(2011, 10, 14), projetoA.Ciclos[5].DtTermino, "O valor de término deveria ser 14/10/2011");

            //Passo 6

            projetoA.NbCicloTotalPlan = 4;

            projetoA.Save();

            Assert.AreEqual(1, projetoA.Ciclos[0].NbCiclo, "O ciclo deveria ser 1");
            Assert.AreEqual(new DateTime(2011, 04, 25), projetoA.Ciclos[0].DtInicio, "O valor de inicio deveria ser 25/04/2011");
            Assert.AreEqual(new DateTime(2011, 05, 20), projetoA.Ciclos[0].DtTermino, "O valor de término deveria ser 20/05/2011");

            Assert.AreEqual(2, projetoA.Ciclos[1].NbCiclo, "O ciclo deveria ser 2");
            Assert.AreEqual(new DateTime(2011, 05, 24), projetoA.Ciclos[1].DtInicio, "O valor de inicio deveria ser 24/05/2011");
            Assert.AreEqual(new DateTime(2011, 06, 20), projetoA.Ciclos[1].DtTermino, "O valor de término deveria ser 20/06/2011");

            Assert.AreEqual(3, projetoA.Ciclos[2].NbCiclo, "O ciclo deveria ser 3");
            Assert.AreEqual(new DateTime(2011, 06, 22), projetoA.Ciclos[2].DtInicio, "O valor de inicio deveria ser 22/06/2011");
            Assert.AreEqual(new DateTime(2011, 07, 19), projetoA.Ciclos[2].DtTermino, "O valor de término deveria ser 19/07/2011");

            Assert.AreEqual(4, projetoA.Ciclos[3].NbCiclo, "O ciclo deveria ser 4");
            Assert.AreEqual(new DateTime(2011, 07, 21), projetoA.Ciclos[3].DtInicio, "O valor de inicio deveria ser 21/07/2011");
            Assert.AreEqual(new DateTime(2011, 08, 17), projetoA.Ciclos[3].DtTermino, "O valor de término deveria ser 17/08/2011");
        }