public void Test_eFi_Crono34() { CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest, CsCalendarioDomain.Folga, new DateTime(2010, 11, 15), new DateTime(2010, 11, 20), true); Calendario calendario02 = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest, CsCalendarioDomain.Folga, new DateTime(2010, 11, 10), new DateTime(2010, 11, 14)); Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario02, "CalendarioConflitante", DefaultContexts.Save)); Calendario calendario03 = CalendarioFactory.CriarCalendarioPorPeriodo( SessionTest, CsCalendarioDomain.Trabalho, new DateTime(2010, 11, 21), new DateTime(2010, 11, 22)); Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario03, "CalendarioConflitante", DefaultContexts.Save)); }
public void Test_eFi_Crono35() { const string RESTRICAO = "CalendarioConflitante"; Calendario calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest, CsCalendarioDomain.Folga, new DateTime(2010, 11, 15), new DateTime(2010, 11, 20)); calendario.CsSituacao = CsSituacaoDomain.Inativo; calendario.Save(); calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest, CsCalendarioDomain.Folga, new DateTime(2010, 11, 15), new DateTime(2010, 11, 16)); Assert.AreEqual(ValidationState.Valid, 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.Valid, 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.Valid, ValidationUtil.GetRuleState(calendario, RESTRICAO, DefaultContexts.Save)); calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest, CsCalendarioDomain.Trabalho, new DateTime(2010, 11, 14), new DateTime(2010, 11, 21)); Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario, RESTRICAO, DefaultContexts.Save)); calendario = CalendarioFactory.CriarCalendarioPorPeriodo(SessionTest, CsCalendarioDomain.Trabalho, new DateTime(2010, 11, 15), new DateTime(2010, 11, 20)); Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(calendario, RESTRICAO, DefaultContexts.Save)); }
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)); }