Exemplo n.º 1
0
        public void Deve_Validar_Inicio_Apos_Fim_Periodo()
        {
            repositorioTipoCalendario.Setup(x => x.ObterPorId(It.IsAny <long>())).Returns(new TipoCalendario
            {
                Id         = 1,
                Modalidade = ModalidadeTipoCalendario.EJA,
                AnoLetivo  = DateTime.Now.Year
            });

            long tipoCalendario = 1;
            var  periodos       = new List <PeriodoEscolar>();

            periodos.Add(new PeriodoEscolar
            {
                TipoCalendarioId = 1,
                Bimestre         = 1,
                PeriodoFim       = DateTime.Now.AddMinutes(1),
                PeriodoInicio    = DateTime.Now
            });

            periodos.Add(new PeriodoEscolar
            {
                TipoCalendarioId = 1,
                Bimestre         = 2,
                PeriodoFim       = DateTime.Now.AddMinutes(3),
                PeriodoInicio    = DateTime.Now.AddMinutes(4)
            });

            Assert.ThrowsAsync <NegocioException>(() => servicoPeriodoEscolar.SalvarPeriodoEscolar(periodos, tipoCalendario));
        }
        public void Salvar(PeriodoEscolarListaDto periodosDto)
        {
            if (periodosDto.TipoCalendario == 0)
            {
                throw new NegocioException("É necessario informar o tipo de calendario");
            }

            var listaPeriodoEscolar = MapearListaPeriodos(periodosDto);

            servicoPeriodoEscolar.SalvarPeriodoEscolar(listaPeriodoEscolar, periodosDto.TipoCalendario);
        }
        public async Task Salvar(PeriodoEscolarListaDto periodosDto)
        {
            var periodosOrdenados = periodosDto.Periodos.OrderBy(p => p.Bimestre);

            periodosDto.Periodos = periodosOrdenados.ToList();
            if (periodosDto.TipoCalendario == 0)
            {
                throw new NegocioException("É necessario informar o tipo de calendario");
            }

            var listaPeriodoEscolar = MapearListaPeriodos(periodosDto);

            await servicoPeriodoEscolar.SalvarPeriodoEscolar(listaPeriodoEscolar, periodosDto.TipoCalendario);
        }
        public void Deve_Gerar_Excecao_Se_Adicionar_Periodo_Para_Tipo_Com_Periodo_Cadastrado()
        {
            var  periodos       = new List <PeriodoEscolar>();
            long tipoCalendario = 1;

            repositorioTipoCalendario.Setup(x => x.ObterPorId(It.IsAny <long>())).Returns(new TipoCalendario
            {
                Id         = 1,
                Modalidade = ModalidadeTipoCalendario.EJA,
                AnoLetivo  = DateTime.Now.Year
            });

            repositorioPeriodoEscolar.Setup(x => x.ObterPorTipoCalendario(It.IsAny <long>())).Returns(new List <PeriodoEscolar> {
                new PeriodoEscolar {
                    Id = 1
                }
            });

            periodos.Add(new PeriodoEscolar
            {
                TipoCalendarioId = 1,
                Bimestre         = 1,
                PeriodoFim       = DateTime.Now.AddMinutes(1),
                PeriodoInicio    = DateTime.Now
            });

            periodos.Add(new PeriodoEscolar
            {
                TipoCalendarioId = 1,
                Bimestre         = 2,
                PeriodoFim       = DateTime.Now.AddMinutes(3),
                PeriodoInicio    = DateTime.Now.AddMinutes(2)
            });

            Assert.Throws <NegocioException>(() => servicoPeriodoEscolar.SalvarPeriodoEscolar(periodos, tipoCalendario));

            periodos[0].Id = 1;

            Assert.Throws <NegocioException>(() => servicoPeriodoEscolar.SalvarPeriodoEscolar(periodos, tipoCalendario));

            periodos[1].Id = 2;

            servicoPeriodoEscolar.SalvarPeriodoEscolar(periodos, tipoCalendario);
        }