コード例 #1
0
        public IActionResult Index()
        {
            QuestionarioViewModels viewModel = new QuestionarioViewModels
            {
                Perguntas = new List <PerguntaViewModel>()
            };

            IList <Pergunta> perguntas = _repositorioPerguntas.GetPerguntas().ToList();

            foreach (var pergunta in perguntas)
            {
                IList <RespostaViewModel> respostas = pergunta.Respostas.Select(resposta =>
                                                                                new RespostaViewModel()
                {
                    RespostaId = resposta.Id, Descricao = resposta.Texto
                }).ToList();

                viewModel.Perguntas.Add(new PerguntaViewModel()
                {
                    PerguntaId = pergunta.Id,
                    Descricao  = pergunta.Descricao,
                    Respostas  = respostas
                });
            }

            return(View(viewModel));
        }
コード例 #2
0
        public void Index_DiferentesConfiguracoesRepositorioPerguntas_RetornaViewResultComViewModel(IList <Pergunta> listaRepositorioPerguntas, QuestionarioViewModels viewModelEsperado)
        {
            // Arrange
            var mockRepositorioPerguntas = new Mock <IRepositorioPergunta>();

            mockRepositorioPerguntas.Setup(config => config.GetPerguntas()).Returns(listaRepositorioPerguntas);

            var mockRepositorioRespostas = new Mock <IRepositorioResposta>();

            // Act
            QuestionarioController controller     = new QuestionarioController(mockRepositorioPerguntas.Object, mockRepositorioRespostas.Object);
            ViewResult             viewResult     = (ViewResult)controller.Index();
            QuestionarioViewModels viewModelAtual = (QuestionarioViewModels)viewResult.Model;

            // Assert
            Assert.Equal(viewModelEsperado, viewModelAtual, new ComparadorQuestionarioViewModel());
        }