private long CriarWorkflowParaDataPassada(Evento evento, AbrangenciaUeRetorno escola, string linkParaEvento) { var wfAprovacaoEvento = new WorkflowAprovacaoDto() { Ano = evento.DataInicio.Year, NotificacaoCategoria = NotificacaoCategoria.Workflow_Aprovacao, EntidadeParaAprovarId = evento.Id, Tipo = WorkflowAprovacaoTipo.Evento_Data_Passada, UeId = evento.UeId, DreId = evento.DreId, NotificacaoTitulo = "Criação de evento com data passada", NotificacaoTipo = NotificacaoTipo.Calendario, NotificacaoMensagem = $"O evento {evento.Nome} - {evento.DataInicio.Day}/{evento.DataInicio.Month}/{evento.DataInicio.Year} foi criado no calendário {evento.TipoCalendario.Nome} da {escola.Nome}. Para que este evento seja considerado válido, você precisa aceitar esta notificação. Para visualizar o evento clique <a href='{linkParaEvento}'>aqui</a>." }; wfAprovacaoEvento.Niveis.Add(new WorkflowAprovacaoNivelDto() { Cargo = Cargo.Supervisor, Nivel = 1 }); return(comandosWorkflowAprovacao.Salvar(wfAprovacaoEvento)); }
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); } } }