// GET: Question
        public IActionResult Index(string searchString, string currentFilter, int?pageNumber, string message)
        {
            ViewBag.Message = message;
            if (searchString != null)
            {
                pageNumber = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;
            List <QuestionViewModel> questionViewModels = new List <QuestionViewModel>();
            IEnumerable <Question>   questions;

            if (!String.IsNullOrEmpty(searchString))
            {
                questions = _questionManager.Search(searchString);
            }
            else
            {
                questions = _questionManager.GetAll();
            }

            foreach (Question q in questions)
            {
                questionViewModels.Add(MapToQuestionViewModel(q));
            }

            int pageSize = 8;

            return(View(PaginatedList <QuestionViewModel> .Create(questionViewModels, pageNumber ?? 1, pageSize)));
        }
Exemple #2
0
        public IActionResult Get()
        {
            try
            {
                IEnumerable <Question> results = questionManager.GetAll();

                return(Ok(results));
            }
            catch (Exception ex)
            {
                logger.LogError($"Failed to get all questions: {ex}");
                return(BadRequest(config["Error:Default"]));
            }
        }
        public void Get_Questions_Returns_AllQuestions()
        {
            // Arrange
            InitQuestions(repository);
            var questionManager = new QuestionManager(null, repository.Object);

            //// Act
            var pagedQuestions = questionManager.GetAll(page: 1, pageSize: 3);

            //// Assert
            Assert.IsNotNull(pagedQuestions, "Result is null");
            Assert.IsInstanceOfType(pagedQuestions, typeof(PagedEntity <Question>), "Wrong Model");
            Assert.AreEqual(4, pagedQuestions.TotalRecords, "Wrong number of record count");
            Assert.AreEqual(4, pagedQuestions.PagedData.Count, "Got wrong number of Questions");
        }