Exemple #1
0
        public void DeveriaNaoSalvarQuestionarioQuandoPeriodoForVazia()
        {
            //arrange
            CriaMock();
            PopulaTurmaId();

            //act
            CriaAdminController();

            sut.CadastrarProfessor("Robson", "Junior", turmaId);
            //sut.CadastrarQuestionario(new List<Perguntas>(), new Periodo());
            var      listaDeIdDePerguntas = new List <int>();
            Pergunta pergunta             = new Pergunta("Você se da bem com o seu professor?");

            listaDeIdDePerguntas.Add(1);

            var periodo = new Periodo();

            var cadastroQuestionario = new QuestionarioCadastroViewModel()
            {
                PeriodoInicial       = periodo.DataInicial,
                PeriodoFinal         = periodo.DataFinal,
                ListaDeIdDePerguntas = listaDeIdDePerguntas
            };

            sut.CadastrarQuestionario(cadastroQuestionario);

            //assert
            questionarioRepositoryMock.Verify(x => x.Salvar(It.IsAny <Questionario>()), Times.Never);
        }
Exemple #2
0
        public void DeveriaNaoSalvarQuestionarioQuandoDataInicialForAnteriorAHoje()
        {
            //arrange
            CriaMock();
            PopulaTurmaId();

            //act
            CriaAdminController();

            var listaDeIdDePerguntas = new List <int>();

            listaDeIdDePerguntas.Add(1);

            var periodo = new Periodo()
            {
                DataInicial = DateTime.Now.AddDays(-1),
                DataFinal   = DateTime.Now.AddDays(4)
            };

            var cadastroQuestionario = new QuestionarioCadastroViewModel()
            {
                PeriodoInicial       = periodo.DataInicial,
                PeriodoFinal         = periodo.DataFinal,
                ListaDeIdDePerguntas = listaDeIdDePerguntas
            };

            sut.CadastrarQuestionario(cadastroQuestionario);

            //assert
            questionarioRepositoryMock.Verify(x => x.Salvar(It.IsAny <Questionario>()), Times.Never);
        }
Exemple #3
0
        public void DeveriaNaoSalvarQuestionarioQuandoListaDePerguntasForNull()
        {
            //arrange
            CriaMock();
            PopulaTurmaId();

            //act
            CriaAdminController();

            sut.CadastrarProfessor("Robson", "Junior", turmaId);
            //sut.CadastrarQuestionario(new List<Perguntas>(), new Periodo());
            List <int> listaDeIdDePerguntas = null;

            var periodo = new Periodo();

            periodo.DataInicial = DateTime.Now;
            periodo.DataFinal   = new DateTime(2008, 5, 1, 8, 30, 52);

            var cadastroQuestionario = new QuestionarioCadastroViewModel()
            {
                PeriodoInicial       = periodo.DataInicial,
                PeriodoFinal         = periodo.DataFinal,
                ListaDeIdDePerguntas = listaDeIdDePerguntas
            };

            sut.CadastrarQuestionario(cadastroQuestionario);

            //assert
            questionarioRepositoryMock.Verify(x => x.Salvar(It.IsAny <Questionario>()), Times.Never);
        }
Exemple #4
0
        public IActionResult CadastrarQuestionario(QuestionarioCadastroViewModel questionarioCadastro)
        {
            string Nome = questionarioCadastro.NomeDoQuestionario;

            Periodo periodo = new Periodo();

            periodo.DataInicial = questionarioCadastro.PeriodoInicial;
            periodo.DataFinal   = questionarioCadastro.PeriodoFinal;

            Questionario questionario = new Questionario()
            {
                Periodo = periodo
            };

            questionario.Nome  = Nome;
            questionario.Ativo = true;

            if (questionarioCadastro.ListaDeIdDePerguntas == null || questionarioCadastro.ListaDeIdDePerguntas.Count() == 0)
            {
                TempData["ErroPerguntaVazia"] = "O questionario precisa de perguntas para ser cadastrado.";
                return(RedirectToAction("CadastrarQuestionario", "Admin"));
            }

            foreach (var perguntaId in questionarioCadastro.ListaDeIdDePerguntas)
            {
                Pergunta pergunta = new Pergunta();
                pergunta = _perguntaRepository.ObterPerguntaPeloId(perguntaId);
                if (pergunta == null || pergunta.Id == 0)
                {
                    return(View());
                }

                var questionarioPergunta = new QuestionarioPergunta();
                questionarioPergunta.PerguntaId     = pergunta.Id;
                questionarioPergunta.QuestionarioId = questionario.Id;

                questionario.Perguntas = new List <QuestionarioPergunta>();
                questionario.Perguntas.Add(questionarioPergunta);
            }

            if (questionario.EhValido())
            {
                _questionarioRepository.Salvar(questionario);
            }
            else
            {
                TempData["ErroQuestionario"] = "Por favor verifique se todos os campos foram preenchidos.";
                return(RedirectToAction("CadastrarQuestionario", "Admin"));
            }

            TempData["SucessoQuestionario"] = "Questionario cadastrado com sucesso.";
            return(RedirectToAction("CadastrarQuestionario", "Admin"));
        }
Exemple #5
0
        public void DeveriaSalvarQuestionarioUmaUnicaVezQuandoOMetodoSalvarForChamado()
        {
            //arrange
            CriaMock();
            PopulaTurmaId();

            //act
            CriaAdminController();

            var Nome = "Questionario1";

            int n = 1;
            var listaDeIdDePerguntas = new List <int>();

            listaDeIdDePerguntas.Add(n);

            perguntaRepositoryMock.Setup(x => x.ObterPerguntaPeloId(n)).Returns(new Pergunta("blablablabla")
            {
                Id = 1
            });

            var periodo = new Periodo()
            {
                DataInicial = DateTime.Now,
                DataFinal   = DateTime.Now.AddDays(4)
            };

            var cadastroQuestionario = new QuestionarioCadastroViewModel()
            {
                NomeDoQuestionario   = Nome,
                PeriodoInicial       = periodo.DataInicial,
                PeriodoFinal         = periodo.DataFinal,
                ListaDeIdDePerguntas = listaDeIdDePerguntas
            };

            sut.CadastrarQuestionario(cadastroQuestionario);


            //assert
            questionarioRepositoryMock.Verify(x => x.Salvar(It.IsAny <Questionario>()), Times.Once);
        }