public async Task DeveCriarEventoEValidarParticularidadesSME_OrganizacaoSME_PerfilSME() { //ARRANGE var tipoEvento = new EventoTipo { Id = 8, Codigo = 8, TipoData = EventoTipoData.InicioFim, LocalOcorrencia = EventoLocalOcorrencia.SME }; repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(tipoEvento); repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(new TipoCalendario { Id = 1 }); IEnumerable <Evento> listaEventosParaValidarPeriodo = new List <Evento>() { new Evento() { DataInicio = DateTime.Now, DataFim = DateTime.Now.AddDays(1) } }; repositorioEvento.Setup(a => a.ObterEventosPorTipoETipoCalendario(tipoEvento.Codigo, 8)).Returns(Task.FromResult(listaEventosParaValidarPeriodo)); var usuario = new Usuario(); var perfilProfessor = new PrioridadePerfil { CodigoPerfil = Guid.Parse("23E1E074-37D6-E911-ABD6-F81654FE895D"), Tipo = TipoPerfil.UE }; usuario.DefinirPerfis(new List <PrioridadePerfil> { perfilProfessor }); servicoUsuario.Setup(c => c.ObterUsuarioLogado()) .Returns(Task.FromResult(usuario)); var evento = new Evento { TipoCalendarioId = 8, TipoEvento = tipoEvento, DataInicio = DateTime.Now, DataFim = DateTime.Now.AddDays(2), Letivo = EventoLetivo.Sim }; //ASSERT await Assert.ThrowsAsync <NegocioException>(() => servicoEvento.Salvar(evento)); }
public async Task DeveCriarEvento() { repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(new EventoTipo { Id = 1, TipoData = EventoTipoData.Unico, LocalOcorrencia = EventoLocalOcorrencia.UE }); repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(new TipoCalendario { Id = 1, }); var usuario = new Usuario(); var perfilProfessor = new PrioridadePerfil { CodigoPerfil = Guid.Parse("40E1E074-37D6-E911-ABD6-F81654FE895D") }; usuario.DefinirPerfis(new List <PrioridadePerfil> { perfilProfessor }); servicoUsuario.Setup(c => c.ObterUsuarioLogado()) .Returns(Task.FromResult(usuario)); await servicoEvento.Salvar(new Evento { TipoCalendarioId = 1, TipoEventoId = 1, DataInicio = DateTime.Now, Letivo = EventoLetivo.Sim, DreId = "123", UeId = "123" }); repositorioEvento.Verify(c => c.Salvar(It.IsAny <Evento>()), Times.Once); }
public async Task DeveCriarEventoEValidarParticularidadesSME_OrganizacaoSME_Periodo() { //ARRANGE var tipoEvento = new EventoTipo { Id = 1, Codigo = 1, TipoData = EventoTipoData.InicioFim, LocalOcorrencia = EventoLocalOcorrencia.UE }; repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(tipoEvento); repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(new TipoCalendario { Id = 1 }); IEnumerable <Evento> listaEventosParaValidarPeriodo = new List <Evento>() { new Evento() { DataInicio = DateTime.Now, DataFim = DateTime.Now.AddDays(1), Nome = "teste" }, new Evento() { DataInicio = DateTime.Now.AddDays(1), DataFim = DateTime.Now.AddDays(3), Nome = "teste" } }; repositorioEvento.Setup(a => a.ObterEventosPorTipoETipoCalendario((long)TipoEvento.OrganizacaoEscolar, 8)).Returns(Task.FromResult(listaEventosParaValidarPeriodo)); var usuario = new Usuario(); var perfilSme = new PrioridadePerfil { CodigoPerfil = Guid.Parse("23E1E074-37D6-E911-ABD6-F81654FE895D"), Tipo = TipoPerfil.UE }; usuario.DefinirPerfis(new List <PrioridadePerfil> { perfilSme }); servicoUsuario.Setup(c => c.ObterUsuarioLogado()) .Returns(Task.FromResult(usuario)); var eventoQueNaoDevePassar = new Evento { TipoCalendarioId = 8, DreId = "1", UeId = "2", TipoEvento = tipoEvento, DataInicio = DateTime.Now, DataFim = DateTime.Now.AddDays(2), Letivo = EventoLetivo.Sim }; var eventoQueDevePassar = new Evento { TipoCalendarioId = 8, DreId = "1", UeId = "2", TipoEvento = tipoEvento, DataInicio = DateTime.Now.AddDays(4), DataFim = DateTime.Now.AddDays(6), Letivo = EventoLetivo.Sim }; //ASSERT Task task() => servicoEvento.Salvar(eventoQueNaoDevePassar); await Assert.ThrowsAsync <NegocioException>(task); await servicoEvento.Salvar(eventoQueDevePassar); repositorioEvento.Verify(c => c.Salvar(It.IsAny <Evento>()), Times.Once); }
public async Task DeveCriarEventoEValidarParticularidadesSME_LiberacaoExcepcional_Periodo_Alertar() { //ARRANGE var tipoEvento = new EventoTipo { Id = 1, Codigo = (int)TipoEvento.LiberacaoExcepcional, TipoData = EventoTipoData.InicioFim, LocalOcorrencia = EventoLocalOcorrencia.UE }; repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(tipoEvento); var tipoCalendario = new TipoCalendario { Id = 1 }; repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(tipoCalendario); var listaPeriodoEscolar = new List <PeriodoEscolar>() { new PeriodoEscolar() { PeriodoInicio = DateTime.Today, PeriodoFim = DateTime.Today.AddDays(7) } }; repositorioPeriodoEscolar.Setup(a => a.ObterPorTipoCalendario(tipoCalendario.Id)).Returns(listaPeriodoEscolar); var usuario = new Usuario(); var perfil = new PrioridadePerfil { CodigoPerfil = Guid.Parse("23A1E074-37D6-E911-ABD6-F81654FE895D"), Tipo = TipoPerfil.DRE }; usuario.DefinirPerfis(new List <PrioridadePerfil> { perfil }); servicoUsuario.Setup(c => c.ObterUsuarioLogado()) .Returns(Task.FromResult(usuario)); var evento = new Evento { TipoCalendarioId = tipoCalendario.Id, DreId = "1", UeId = "2", TipoEvento = tipoEvento, DataInicio = DateTime.Now.AddMonths(1), DataFim = DateTime.Now.AddMonths(1).AddDays(2), Letivo = EventoLetivo.Sim }; //ASSERT await Assert.ThrowsAsync <NegocioException>(() => servicoEvento.Salvar(evento)); }
public async Task DeveCriarEventoEValidarParticularidadesSME_LiberacaoExcepcional(TipoPerfil tipoPerfil, bool sucesso) { //ARRANGE var tipoEvento = new EventoTipo { Id = 1, Codigo = (int)TipoEvento.LiberacaoExcepcional, TipoData = EventoTipoData.InicioFim, LocalOcorrencia = EventoLocalOcorrencia.UE }; repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(tipoEvento); var tipoCalendario = new TipoCalendario { Id = 1 }; repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>())) .Returns(tipoCalendario); var listaPeriodoEscolar = new List <PeriodoEscolar>() { new PeriodoEscolar() { PeriodoInicio = DateTime.Today, PeriodoFim = DateTime.Today.AddDays(7) } }; repositorioPeriodoEscolar.Setup(a => a.ObterPorTipoCalendario(tipoCalendario.Id)).Returns(listaPeriodoEscolar); var usuario = new Usuario(); var perfil = new PrioridadePerfil { CodigoPerfil = Guid.Parse("23A1E074-37D6-E911-ABD6-F81654FE895D"), Tipo = tipoPerfil }; usuario.DefinirPerfis(new List <PrioridadePerfil> { perfil }); servicoUsuario.Setup(c => c.ObterUsuarioLogado()) .Returns(Task.FromResult(usuario)); var evento = new Evento { TipoCalendarioId = tipoCalendario.Id, DreId = "1", UeId = "2", TipoEvento = tipoEvento, DataInicio = DateTime.Now, DataFim = DateTime.Now.AddDays(2), Letivo = EventoLetivo.Sim }; var ue = new AbrangenciaUeRetorno(); repositorioAbrangencia.Setup(a => a.ObterUe(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Guid>())).Returns(Task.FromResult(ue)); //ASSERT try { await servicoEvento.Salvar(evento, true); Assert.True(true); } catch (Exception) { if (sucesso) { Assert.True(false); } } }