public void DevePoderAlterarOsDadosDoCronograma()
        {
            var situacao = new SituacaoPlanejamento()
            {
                Oid        = Guid.NewGuid(),
                CsPadrao   = CsPadraoSistema.Sim,
                CsSituacao = CsTipoSituacaoPlanejamento.Ativo,
                CsTipo     = CsTipoPlanejamento.Planejamento
            };

            contexto.SituacaoPlanejamento.Add(situacao);
            contexto.SaveChanges();

            var cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);

            var          novaData      = DateTime.Now.Date.AddDays(1);
            const string novaDescricao = "Wex Teste";
            var          dto           = new CronogramaDto
            {
                Oid      = cronograma.Oid,
                DtInicio = cronograma.DtInicio,
                DtFinal  = cronograma.DtFinal,
                OidSituacaoPlanejamento = cronograma.OidSituacaoPlanejamento,
                TxDescricao             = novaDescricao
            };

            Assert.IsTrue(CronogramaBo.EditarCronograma(dto), "Deveria ter salvo a edição do cronograma");

            contexto.Entry(cronograma).Reload();
            Assert.AreEqual(dto.TxDescricao, cronograma.TxDescricao, "Deveria ter salvo o nome do cronograma");
            Assert.AreEqual(dto.DtInicio, cronograma.DtInicio, "Deveria ter salvo a data de inicio do cronograma");
            Assert.AreEqual(dto.DtFinal, cronograma.DtFinal, "Deveria ter salvo a data de termino do cronograma");
        }
        public void EditarTarefaQuandoLinhaBaseNaoEstiverSalvaTest()
        {
            //cria situação planejamento
            SituacaoPlanejamento situacaoPlanejamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1",
                                                                                                          CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução,
                                                                                                          CsPadraoSistema.Sim, true);

            Cronograma cronogramaPadrao1 = CronogramaBo.CriarCronogramaPadrao(contexto);

            Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true);

            string responsaveis = colaborador1.NomeCompleto;

            //iníco tarefa
            DateTime dataInicio = DateTime.Now;

            List <CronogramaTarefa> tarefaImpactadas;

            DateTime dataHoraAcao = new DateTime();

            CronogramaTarefa novaTarefa = CronogramaTarefaBo.CriarCronogramaTarefa(cronogramaPadrao1.Oid, (string)"Tarefa 01", situacaoPlanejamento, dataInicio, responsaveis, colaborador1.Usuario.UserName, out tarefaImpactadas, ref dataHoraAcao, (string)"Criar método", 3, 0);

            //busca tarefa criada
            CronogramaTarefa tarefaCriada = contexto.CronogramaTarefa.FirstOrDefault(o => o.Oid == novaTarefa.Oid);

            //Alterando responsaveis
            Colaborador colaborador2 = ColaboradorFactoryEntity.CriarColaborador(contexto, "pedro.lins", true);

            colaborador2.Usuario.UserName = "******";

            Colaborador colaborador3 = ColaboradorFactoryEntity.CriarColaborador(contexto, "joao.lins", true);

            colaborador3.Usuario.UserName = "******";

            string responsaveisAlterado = String.Format("{0},{1}", colaborador2.NomeCompleto, colaborador3.NomeCompleto);

            //cria situação planejamento alterada
            SituacaoPlanejamento situacaoPlanejamento2 = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S2",
                                                                                                           CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Cancelamento,
                                                                                                           CsPadraoSistema.Sim, true);

            string txDescricaoAlterada           = "Tarefa 01 alterada";
            string txObservacaoAlterada          = "Criar método alterado";
            Int16  EstimativaInicialHoraAlterada = 4;

            TarefaBo.EditarTarefa(tarefaCriada.Oid.ToString(), txDescricaoAlterada, situacaoPlanejamento2.Oid.ToString(), colaborador1.Usuario.UserName,
                                  txObservacaoAlterada, responsaveisAlterado, EstimativaInicialHoraAlterada, new TimeSpan(0), new TimeSpan(0), false, dataInicio);

            //busca tarefa criada
            CronogramaTarefa tarefaAlterada = CronogramaTarefaDao.ConsultarCronogramaTarefaPorOid(tarefaCriada.Oid, o => o.Tarefa.SituacaoPlanejamento, o => o.Tarefa.TarefaResponsaveis);

            DateUtil.CurrentDateTime = (DateTime)tarefaAlterada.Tarefa.DtAtualizadoEm;

            Assert.AreEqual(DateUtil.CurrentDateTime, tarefaAlterada.Tarefa.DtAtualizadoEm, "As datas devem ser iguais.");
            Assert.AreEqual(txDescricaoAlterada, tarefaAlterada.Tarefa.TxDescricao, "Devem ser as mesmas, pois a descrição foi alterada.");
            Assert.AreEqual(txObservacaoAlterada, tarefaAlterada.Tarefa.TxObservacao, "Devem ser as mesmas, pois a data foi alterada.");
            Assert.AreEqual(EstimativaInicialHoraAlterada, tarefaAlterada.Tarefa.NbEstimativaInicial, "");
            Assert.AreEqual(situacaoPlanejamento2.Oid, tarefaAlterada.Tarefa.OidSituacaoPlanejamento, "");
            Assert.AreEqual(responsaveisAlterado, tarefaAlterada.Tarefa.TxResponsaveis);
        }
        public void NaoDeveSalvarAsDatasDoCronogramaQuandoADataInicioForMaiorQueADataTerminoDoCronograma()
        {
            var situacao = new SituacaoPlanejamento()
            {
                Oid        = Guid.NewGuid(),
                CsPadrao   = CsPadraoSistema.Sim,
                CsSituacao = CsTipoSituacaoPlanejamento.Ativo,
                CsTipo     = CsTipoPlanejamento.Planejamento
            };

            contexto.SituacaoPlanejamento.Add(situacao);
            contexto.SaveChanges();
            var cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);


            var novaData        = DateTime.Now.Date.AddDays(1);
            var novaDataTermino = DateTime.Now.Date.AddDays(-1);

            var dto = new CronogramaDto
            {
                Oid      = cronograma.Oid,
                DtInicio = novaData,
                DtFinal  = novaDataTermino,
                OidSituacaoPlanejamento = cronograma.OidSituacaoPlanejamento,
                TxDescricao             = cronograma.TxDescricao
            };


            Assert.AreNotEqual(novaData, cronograma.DtFinal, "As datas devem ser inicialmente diferentes");
            Assert.IsFalse(CronogramaBo.EditarCronograma(dto), "Deveria ter salvo a edição do cronograma");

            contexto.Entry(cronograma).Reload();

            Assert.AreNotEqual(dto.DtFinal, cronograma.DtFinal, "Não deveria ter salvo a data de termino do cronograma");
        }
        public void DeveSalvarOsNovosDadosDoCronogramaQuandoForAlteradaASituacaoPlanejamento()
        {
            var naoIniciado = new SituacaoPlanejamento()
            {
                Oid        = Guid.NewGuid(),
                CsPadrao   = CsPadraoSistema.Não,
                CsSituacao = CsTipoSituacaoPlanejamento.Ativo,
                CsTipo     = CsTipoPlanejamento.Planejamento
            };

            contexto.SituacaoPlanejamento.Add(naoIniciado);
            contexto.SaveChanges();

            var cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);

            var dto = new CronogramaDto
            {
                Oid      = cronograma.Oid,
                DtInicio = cronograma.DtInicio,
                DtFinal  = cronograma.DtFinal,
                OidSituacaoPlanejamento = naoIniciado.Oid,
                TxDescricao             = cronograma.TxDescricao
            };

            Assert.AreNotEqual(naoIniciado.Oid, cronograma.OidSituacaoPlanejamento, "a situação de planejamento devem ser inicialmente diferentes");

            Assert.IsTrue(CronogramaBo.EditarCronograma(dto), "Deveria ter salvo a edição do cronograma");

            contexto.Entry(cronograma).Reload();
            Assert.AreEqual(dto.TxDescricao, cronograma.TxDescricao, "Deveria ter salvo o nome do cronograma");
            Assert.AreEqual(dto.DtInicio, cronograma.DtInicio, "Deveria ter salvo a data de inicio do cronograma");
            Assert.AreEqual(dto.DtFinal, cronograma.DtFinal, "Deveria ter salvo a data de termino do cronograma");
            Assert.AreEqual(dto.OidSituacaoPlanejamento, cronograma.OidSituacaoPlanejamento, "Deveria ter salvo a nova situação planejamento de termino do cronograma");
        }
Ejemplo n.º 5
0
        public void DeveRetornarOSomatorioDeHorasPlanejadasDoCronogramaQuandoNaoHouverTarefasTest()
        {
            //TODO: MIGRAR TESTE PARA TarefaHistoricoEstimativaDao

            Cronograma cronograma = CronogramaBo.CriarCronogramaPadrao();

            double horasPlanejadas = TarefaHistoricoEstimativaDao.ConsultarTotalHorasPlanejadasCronograma(cronograma.Oid);

            Assert.AreEqual(0, horasPlanejadas, "Deve ter 0 horas planejadas, pois não existem tarefas cadastradas.");
        }
        public void DeveNaoAlterarONomeDoCronogramaQuandoPossuirCronogramaComNomesIguais()
        {
            Cronograma cronogramaPadrao1 = CronogramaBo.CriarCronogramaPadrao(contexto);
            Cronograma cronogramaPadrao2 = CronogramaBo.CriarCronogramaPadrao(contexto);

            string novaDescricao = "Wex   Cronograma  02 ";

            bool confirmacao = CronogramaBo.AlterarDescricaoCronograma(cronogramaPadrao1.Oid, novaDescricao);

            Assert.IsFalse(confirmacao, "Não deve permitir salvar um cronograma com o mesmo nome independente se contém espaços a mais.");
        }
        public void SelecionarCorColaboradorQuandoHouverColaboradorECronogramaMasNaoHouverCronogramaColaboradorConfigTest()
        {
            ColaboradorFactoryEntity.CriarColaborador(contexto, "gabriel.matos", true);
            Cronograma cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);
            string     cor        = CronogramaColaboradorConfigBo.EscolherCorColaborador("gabriel.matos", cronograma.Oid);

            Assert.IsNotNull(cor, "Deveria ter criado uma cor para o colaborador");
            string corSelecionada = CronogramaColaboradorConfigBo.EscolherCorColaborador("gabriel.matos", cronograma.Oid);

            Assert.AreEqual(cor, corSelecionada, "A cor selecionada deveria ser a mesma cor que foi escolhida da primeira vez");
        }
 public void Inicializar()
 {
     situacoesPlanejamento = new List <SituacaoPlanejamento>();
     situacoesPlanejamento.Add(CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "Não Iniciado", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Planejamento, CsPadraoSistema.Sim, true));
     situacoesPlanejamento.Add(CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "Em Andamento", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução, CsPadraoSistema.Não, true));
     situacoesPlanejamento.Add(CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "Cancelado", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Cancelamento, CsPadraoSistema.Não, true));
     situacoesPlanejamento.Add(CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "Impedimento", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Impedimento, CsPadraoSistema.Não, true));
     situacoesPlanejamento.Add(CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "Pronto", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Encerramento, CsPadraoSistema.Não, true));
     Cronograma         = CronogramaBo.CriarCronogramaPadrao();
     _tarefasImpactadas = new List <CronogramaTarefa>();
     _dataAcao          = new DateTime();
 }
        public void SelecionarCorColaboradorTest()
        {
            ColaboradorFactoryEntity.CriarColaborador(contexto, "gabriel.matos", true);
            Cronograma cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);
            CronogramaColaboradorConfig config = CronogramaColaboradorConfigDao.SalvarCronogramaColaboradorConfig(contexto, "gabriel.matos", cronograma.Oid);
            string cor = CronogramaColaboradorConfigBo.EscolherCorColaborador("gabriel.matos", cronograma.Oid);

            Assert.IsNotNull(cor, "Deveria ter selecionado uma cor para o colaborador");
            string cor2 = CronogramaColaboradorConfigBo.EscolherCorColaborador("gabriel.matos", cronograma.Oid);

            Assert.AreEqual(cor, cor2, "Ao ser chamado pela segunda vez, deveria retornar a mesma cor escolhida que foi escolhida na primeira vez");
        }
        public void CriarCronogramaPadraoTest()
        {
            List <Cronograma> cronogramas = contexto.Cronograma.ToList();

            Cronograma cronogramaPadrao1 = CronogramaBo.CriarCronogramaPadrao(contexto);

            cronogramas = contexto.Cronograma.ToList();

            Cronograma cronogramaPadrao2 = CronogramaBo.CriarCronogramaPadrao(contexto);

            Assert.IsNotNull(cronogramaPadrao1);
            Assert.IsNotNull(cronogramaPadrao2);
        }
        public void CriarColaboradorCronogramaConfigTest()
        {
            ColaboradorFactoryEntity.CriarColaborador(contexto, "gabriel.matos", true);

            Cronograma cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);

            CronogramaColaboradorConfig config = CronogramaColaboradorConfigDao.SalvarCronogramaColaboradorConfig(contexto, "gabriel.matos", cronograma.Oid);

            Assert.IsNotNull(config, "Deveria ter sido criado o CronogramaColaborador Config para o Colabordor atual");

            CronogramaColaboradorConfig config2 = CronogramaColaboradorConfigDao.SalvarCronogramaColaboradorConfig(contexto, "gabriel.matos", cronograma.Oid);

            Assert.AreEqual(config.Oid, config2.Oid, "Deveria possuir as mesmas configurações");
        }
        public void EditarTarefaQuandoAlterarHorasRestantesEHorasRealizadoTarefaTest()
        {
            //cria situação planejamento
            SituacaoPlanejamento situacaoPlanejamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1",
                                                                                                          CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução,
                                                                                                          CsPadraoSistema.Sim, true);

            Cronograma cronogramaPadrao1 = CronogramaBo.CriarCronogramaPadrao(contexto);


            Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true);

            string responsaveis = colaborador1.NomeCompleto;

            //iníco tarefa
            DateTime dataInicio = DateTime.Now;

            List <CronogramaTarefa> tarefasImpactadas;
            DateTime         dataHoraAcao = new DateTime();
            CronogramaTarefa novaTarefa   = CronogramaTarefaBo.CriarCronogramaTarefa(cronogramaPadrao1.Oid, (string)"Tarefa 01", situacaoPlanejamento, dataInicio, responsaveis, colaborador1.Usuario.UserName, out tarefasImpactadas, ref dataHoraAcao, (string)"Criar método", 3, 0);

            //busca tarefa criada
            CronogramaTarefa tarefaCriada = CronogramaTarefaDao.ConsultarCronogramaTarefaPorOid(novaTarefa.Oid, o => o.Tarefa.SituacaoPlanejamento);

            //Salvando a linha de base
            bool     salvarLinhaBaseTarefa = true;
            TimeSpan estimativaRestante    = tarefaCriada.Tarefa.EstimativaInicialHora;

            string responsaveisAlterado = colaborador1.NomeCompleto;

            TarefaBo.EditarTarefa(tarefaCriada.Oid.ToString(), tarefaCriada.Tarefa.TxDescricao, tarefaCriada.Tarefa.SituacaoPlanejamento.Oid.ToString(), colaborador1.Usuario.UserName,
                                  tarefaCriada.Tarefa.TxObservacao, responsaveisAlterado, tarefaCriada.Tarefa.NbEstimativaInicial, estimativaRestante, new TimeSpan(0), salvarLinhaBaseTarefa, dataInicio);

            //busca tarefa criada
            CronogramaTarefa tarefaAlterada = contexto.CronogramaTarefa.FirstOrDefault(o => o.Oid == tarefaCriada.Oid);

            //Alterando Estimativa Restante da tarefa
            TimeSpan estimativaRestanteAlterada = new TimeSpan(1, 0, 0);
            TimeSpan horasRealizado             = new TimeSpan(2, 0, 0);

            TarefaBo.EditarTarefa(tarefaCriada.Oid.ToString(), tarefaCriada.Tarefa.TxDescricao, tarefaCriada.Tarefa.SituacaoPlanejamento.Oid.ToString(), colaborador1.Usuario.UserName,
                                  tarefaCriada.Tarefa.TxObservacao, responsaveisAlterado, tarefaCriada.Tarefa.NbEstimativaInicial, estimativaRestanteAlterada, horasRealizado, salvarLinhaBaseTarefa, DateTime.Now);

            //busca tarefa criada
            CronogramaTarefa tarefaAlteradaHorario = CronogramaTarefaDao.ConsultarCronogramaTarefaPorOid(tarefaCriada.Oid, o => o.Tarefa.SituacaoPlanejamento);

            Assert.AreEqual(new TimeSpan(3, 0, 0), tarefaCriada.Tarefa.EstimativaInicialHora, "Deve ser a mesma estimativa inicial.");
            Assert.AreEqual(estimativaRestanteAlterada, tarefaAlteradaHorario.Tarefa.EstimativaRestanteHora, "Deve ter alterado a estimativa restante.");
            Assert.AreEqual(horasRealizado, tarefaAlteradaHorario.Tarefa.EstimativaRealizadoHora, "Deve ter alterado as horas realizado.");
        }
Ejemplo n.º 13
0
        public void DeveRetornarOSomatorioDeHorasPlanejadasDoCronogramaQuandoHouverTarefasTest()
        {
            //TODO: MIGRAR TESTE PARA TarefaHistoricoEstimativaDao

            Cronograma cronograma = CronogramaBo.CriarCronogramaPadrao();

            CronogramaTarefaBo.CriarCronogramaTarefa(cronograma.Oid, "Tarefa 01", situacoesPlanejamento.FirstOrDefault(o => o.CsTipo == CsTipoPlanejamento.Planejamento), DateTime.MinValue, "", colaboradorPadrao.Usuario.UserName, out tarefasImpactadas, ref dataAcao, "Criar método", 3);
            CronogramaTarefaBo.CriarCronogramaTarefa(cronograma.Oid, "Tarefa 02", situacoesPlanejamento.FirstOrDefault(o => o.CsTipo == CsTipoPlanejamento.Planejamento), DateTime.MinValue, "", colaboradorPadrao.Usuario.UserName, out tarefasImpactadas, ref dataAcao, "Criar método", 3);
            CronogramaTarefaBo.CriarCronogramaTarefa(cronograma.Oid, "Tarefa 03", situacoesPlanejamento.FirstOrDefault(o => o.CsTipo == CsTipoPlanejamento.Planejamento), DateTime.MinValue, "", colaboradorPadrao.Usuario.UserName, out tarefasImpactadas, ref dataAcao, "Criar método", 3);
            CronogramaTarefaBo.CriarCronogramaTarefa(cronograma.Oid, "Tarefa 04", situacoesPlanejamento.FirstOrDefault(o => o.CsTipo == CsTipoPlanejamento.Planejamento), DateTime.MinValue, "", colaboradorPadrao.Usuario.UserName, out tarefasImpactadas, ref dataAcao, "Criar método", 3);
            CronogramaTarefaBo.CriarCronogramaTarefa(cronograma.Oid, "Tarefa 05", situacoesPlanejamento.FirstOrDefault(o => o.CsTipo == CsTipoPlanejamento.Planejamento), DateTime.MinValue, "", colaboradorPadrao.Usuario.UserName, out tarefasImpactadas, ref dataAcao, "Criar método", 3);

            double horasPlanejadas = TarefaHistoricoEstimativaDao.ConsultarTotalHorasPlanejadasCronograma(cronograma.Oid);

            Assert.AreEqual(15, horasPlanejadas.ToTimeSpan().Hours, "Deve ter 0 horas planejadas, pois não existem tarefas cadastradas.");
        }
        public void CriarCronogramaQuandoNaoHouverNomePadraoIgualNoBancoTest()
        {
            List <Cronograma> cronogramas = contexto.Cronograma.ToList();

            string TxDescricaoCronograma1 = "Wex Cronograma " + String.Format("{00:00}", (cronogramas.Count + 1));

            Cronograma cronogramaPadrao1 = CronogramaBo.CriarCronogramaPadrao();

            cronogramas = contexto.Cronograma.ToList();

            string TxDescricaoCronograma2 = "Wex Cronograma " + String.Format("{00:00}", (cronogramas.Count + 1));

            Cronograma cronogramaPadrao2 = CronogramaBo.CriarCronogramaPadrao(contexto);

            Assert.AreEqual(TxDescricaoCronograma1, cronogramaPadrao1.TxDescricao);
            Assert.AreEqual(TxDescricaoCronograma2, cronogramaPadrao2.TxDescricao);
        }
Ejemplo n.º 15
0
        public void ConsultarCronogramaColaboradorConfigTest()
        {
            Cronograma cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);

            string[]                    logins            = new string[] { "gabriel.matos", "anderson.lins", "adriava.silva", "amanda.silva", "ana.marques" };
            List <Colaborador>          colaboradores     = new List <Colaborador>();
            Dictionary <string, string> dicionarioConfigs = new Dictionary <string, string>();
            string cor = null;

            for (int i = 0; i < logins.Length; i++)
            {
                colaboradores.Add(ColaboradorFactoryEntity.CriarColaborador(contexto, logins[i], true));
                cor = CronogramaColaboradorConfigBo.EscolherCorColaborador(logins[i], cronograma.Oid);
                dicionarioConfigs.Add(logins[i], cor);
            }

            List <CronogramaColaboradorConfig> configs = CronogramaColaboradorConfigDao.ConsultarCronogramaColaboradorConfig(logins.ToList(), cronograma.Oid);
            Dictionary <string, string>        resultadoListagemConfigs = configs.ToDictionary(o => o.Colaborador.Usuario.UserName, o => o.Cor.ToString());

            CollectionAssert.AreEquivalent(dicionarioConfigs, resultadoListagemConfigs);
        }
        public void EditarTarefaQuandoSalvarLinhaBaseTarefaTest()
        {
            //cria situação planejamento
            SituacaoPlanejamento situacaoPlanejamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1",
                                                                                                          CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução,
                                                                                                          CsPadraoSistema.Sim, true);

            Cronograma cronogramaPadrao1 = CronogramaBo.CriarCronogramaPadrao(contexto);

            Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true);

            string responsaveis = colaborador1.NomeCompleto;

            //iníco tarefa
            DateTime dataInicio = DateTime.Now;

            List <CronogramaTarefa> tarefasImpactadas;
            DateTime         dataHoraAcao = new DateTime();
            CronogramaTarefa novaTarefa   = CronogramaTarefaBo.CriarCronogramaTarefa(cronogramaPadrao1.Oid, (string)"Tarefa 01", situacaoPlanejamento, dataInicio, responsaveis, colaborador1.Usuario.UserName, out tarefasImpactadas, ref dataHoraAcao, (string)"Criar método", 3, 0);

            //busca tarefa criada
            CronogramaTarefa tarefaCriada = CronogramaTarefaDao.ConsultarCronogramaTarefaPorOid(novaTarefa.Oid, o => o.Tarefa.SituacaoPlanejamento, o => o.Cronograma, o => o.Tarefa.AtualizadoPor.Usuario.Person, o => o.Tarefa);

            bool salvarLinhaBaseTarefa = true;

            TimeSpan estimativaRestante = TarefaDao.ConsultarTarefaPorOid((Guid)tarefaCriada.OidTarefa).EstimativaRestanteHora;

            string responsaveisTarefaEdicao = colaborador1.NomeCompleto;

            TarefaBo.EditarTarefa(tarefaCriada.Oid.ToString(), tarefaCriada.Tarefa.TxDescricao, tarefaCriada.Tarefa.SituacaoPlanejamento.Oid.ToString(), colaborador1.Usuario.UserName,
                                  tarefaCriada.Tarefa.TxObservacao, responsaveisTarefaEdicao, tarefaCriada.Tarefa.NbEstimativaInicial, estimativaRestante, new TimeSpan(0), salvarLinhaBaseTarefa, dataInicio);

            //busca tarefa criada
            CronogramaTarefa tarefaAlterada = CronogramaTarefaDao.ConsultarCronogramaTarefaPorOid(tarefaCriada.Oid, o => o.Tarefa.SituacaoPlanejamento, o => o.Cronograma, o => o.Tarefa.AtualizadoPor.Usuario.Person, o => o.Tarefa.LogsAlteracao, o => o.Tarefa.TarefaHistoricoTrabalhos, o => o.Tarefa.TarefaResponsaveis);

            Assert.AreEqual(salvarLinhaBaseTarefa, tarefaAlterada.Tarefa.CsLinhaBaseSalva, "Deveria ter salvo a linha de base");
            Assert.AreEqual(estimativaRestante, tarefaAlterada.Tarefa.NbEstimativaRestante.ToTimeSpan(), "Deveria ter mudado a estimativa restando, pois salvou a linha de base");
        }
        public void DeveSalvarOsNovosDadosDoCronogramaQuandoADataFinalForAlterada()
        {
            var cronograma = CronogramaBo.CriarCronogramaPadrao(contexto);

            var novaData = DateTime.Now.Date.AddDays(1);

            var dto = new CronogramaDto
            {
                Oid      = cronograma.Oid,
                DtInicio = cronograma.DtInicio,
                DtFinal  = novaData,
                OidSituacaoPlanejamento = cronograma.OidSituacaoPlanejamento,
                TxDescricao             = cronograma.TxDescricao
            };

            Assert.AreNotEqual(novaData, cronograma.DtFinal, "As datas devem ser inicialmente diferentes");
            Assert.IsTrue(CronogramaBo.EditarCronograma(dto), "Deveria ter salvo a edição do cronograma");

            contexto.Entry(cronograma).Reload();
            Assert.AreEqual(dto.TxDescricao, cronograma.TxDescricao, "Deveria ter salvo o nome do cronograma");
            Assert.AreEqual(dto.DtInicio, cronograma.DtInicio, "Deveria ter salvo a data de inicio do cronograma");
            Assert.AreEqual(dto.DtFinal, cronograma.DtFinal, "Deveria ter salvo a data de termino do cronograma");
        }
Ejemplo n.º 18
0
 public ActionResult NovoCronograma()
 {
     return(Json(CronogramaBo.DtoFactory(CronogramaBo.CriarCronogramaPadrao())));
 }
        public void EditarTarefaQuandoOutroUsuarioAlterarTarefaTest()
        {
            //cria situação planejamento
            SituacaoPlanejamento situacaoPlanejamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1",
                                                                                                          CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução,
                                                                                                          CsPadraoSistema.Sim, true);

            Cronograma cronogramaPadrao1 = CronogramaBo.CriarCronogramaPadrao(contexto);


            Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true);

            string responsaveis = colaborador1.NomeCompleto;

            //iníco tarefa
            DateTime dataInicio   = DateTime.Now;
            DateTime dataHoraAcao = new DateTime();
            List <CronogramaTarefa> tarefasImpactadas;

            CronogramaTarefa novaTarefa = CronogramaTarefaBo.CriarCronogramaTarefa(cronogramaPadrao1.Oid, (string)"Tarefa 01", situacaoPlanejamento, dataInicio, responsaveis, colaborador1.Usuario.UserName, out tarefasImpactadas, ref dataHoraAcao, (string)"Criar método", 3, 0);

            //busca tarefa criada
            CronogramaTarefa tarefaCriada = contexto.CronogramaTarefa.FirstOrDefault(o => o.Oid == novaTarefa.Oid);

            Colaborador colaborador2 = ColaboradorFactoryEntity.CriarColaborador(contexto, "pedro.lins", true);

            Colaborador colaborador3 = ColaboradorFactoryEntity.CriarColaborador(contexto, "joao.lins", true);

            List <Colaborador> responsaveisAlterados = new List <Colaborador>();

            responsaveisAlterados.Add(colaborador2);
            responsaveisAlterados.Add(colaborador3);

            //cria situação planejamento alterada
            SituacaoPlanejamento situacaoPlanejamento2 = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S2",
                                                                                                           CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Cancelamento,
                                                                                                           CsPadraoSistema.Sim, true);

            Colaborador colaborador4 = ColaboradorFactoryEntity.CriarColaborador(contexto, "gabriel.matos", true);

            string   txDescricaoAlterada           = "Tarefa 01 alterada";
            DateTime dataInicioAlterada            = new DateTime(2013, 12, 10);
            string   txObservacaoAlterada          = "Criar método alterado";
            Int16    EstimativaInicialHoraAlterada = 4;

            string responsaveisAlterado = colaborador1.NomeCompleto;

            TarefaBo.EditarTarefa(tarefaCriada.Oid.ToString(), txDescricaoAlterada, situacaoPlanejamento2.Oid.ToString(), colaborador2.Usuario.UserName,
                                  txObservacaoAlterada, responsaveisAlterado, EstimativaInicialHoraAlterada, new TimeSpan(0), new TimeSpan(0), false, DateTime.Now);

            //busca tarefa criada
            CronogramaTarefa tarefaAlterada = CronogramaTarefaDao.ConsultarCronogramaTarefaPorOid(tarefaCriada.Oid, o => o.Tarefa.SituacaoPlanejamento);

            DateUtil.CurrentDateTime = (DateTime)tarefaAlterada.Tarefa.DtAtualizadoEm;

            Assert.AreEqual(DateUtil.CurrentDateTime, tarefaAlterada.Tarefa.DtAtualizadoEm, "As datas devem ser iguais.");
            Assert.AreEqual(txDescricaoAlterada, tarefaAlterada.Tarefa.TxDescricao, "Devem ser as mesmas, pois a descrição foi alterada.");
            Assert.AreEqual(txObservacaoAlterada, tarefaAlterada.Tarefa.TxObservacao, "Devem ser as mesmas, pois a data foi alterada.");
            Assert.AreEqual(EstimativaInicialHoraAlterada, tarefaAlterada.Tarefa.NbEstimativaInicial, "Devem ser iguais, pois foi alterada");
            Assert.AreEqual(situacaoPlanejamento2.Oid, tarefaAlterada.Tarefa.OidSituacaoPlanejamento, "Devem ser iguais, pois foi alterada");
            Assert.AreEqual(colaborador2.Oid, tarefaAlterada.Tarefa.OidAtualizadoPor, "Deve ser o mesmo, pois foi outro usuário que alterou a tarefa");
        }