예제 #1
0
        public async Task <IActionResult> AssignQuizzesToCategory(CategoryWithQuizzesViewModel model)
        {
            var quizzesIds = model.Quizzes.Where(x => x.IsAssigned).Select(x => x.Id).ToList();

            if (quizzesIds.Count == 0)
            {
                model.Error = true;
                return(this.View(model));
            }

            await this.categoriesService.AssignQuizzesToCategoryAsync(model.Id, quizzesIds);

            return(this.RedirectToAction("CategoryDetails", new { id = model.Id }));
        }
예제 #2
0
        public async Task GetByIdAsyncShouldReturnCorrectModel()
        {
            var creatorId = await this.CreateUserAsync();

            var category = await this.CreateCategoryAsync("Category 1", creatorId);

            var model = new CategoryWithQuizzesViewModel()
            {
                Id      = category.Id,
                Name    = category.Name,
                Error   = false,
                Quizzes = new List <QuizAssignViewModel>(),
            };

            var resultModel = await this.Service.GetByIdAsync <CategoryWithQuizzesViewModel>(category.Id);

            Assert.Equal(model.Id, resultModel.Id);
            Assert.Equal(model.Name, resultModel.Name);
            Assert.Equal(model.Error, resultModel.Error);
            Assert.Equal(model.Quizzes.Count, resultModel.Quizzes.Count);
        }