Пример #1
0
        public async Task GetAllUnAssignedToEventAsyncShouldReturnCorrectModelCollectionIfCreatorIdIsPassed()
        {
            var creatorId   = Guid.NewGuid().ToString();
            var firstQuizId = await this.CreateQuizAsync("First quiz", creatorId);

            var secondQuizId = await this.CreateQuizAsync("Second quiz");

            var firstModel = new QuizAssignViewModel()
            {
                Id         = firstQuizId,
                Name       = "First quiz",
                CreatorId  = creatorId,
                IsAssigned = false,
            };

            var resultModelCollection = await this.Service.GetAllUnAssignedToEventAsync <QuizAssignViewModel>(creatorId);

            Assert.Single(resultModelCollection);
            Assert.IsAssignableFrom <IList <QuizAssignViewModel> >(resultModelCollection);

            Assert.Equal(firstModel.Id, resultModelCollection.First().Id);
            Assert.Equal(firstModel.Name, resultModelCollection.First().Name);
            Assert.Equal(firstModel.CreatorId, resultModelCollection.First().CreatorId);
            Assert.False(resultModelCollection.First().IsAssigned);
        }
        public ActionResult AssignQuizToUsers(QuizAssignViewModel quizAssignViewModel)
        {
            try
            {
                var index = quizRepository.DeleteAssignedUser(quizAssignViewModel.quiz.QuizId);

                foreach (var userId in quizAssignViewModel.userIds)
                {
                    var result = quizRepository.AssignQuiz(quizAssignViewModel.quiz.QuizId, userId, quizAssignViewModel.DueDate);

                    var       emailBody    = quizAssignViewModel.quiz.QuizName + " - assigned to you. Please go through it. <br /> Your Due Date is - " + quizAssignViewModel.DueDate;
                    var       emailSubject = "Quiz Assigned - " + quizAssignViewModel.quiz.QuizName;
                    tblEmails objEmail     = new tblEmails();
                    var       objUser      = userRepository.GetUserById(userId);
                    objEmail.EmailTo      = objUser[0].EmailId;
                    objEmail.EmailSubject = emailSubject;
                    objEmail.EmailBody    = emailBody;
                    var emailResult = userRepository.InsertEmail(objEmail);
                }
            }
            catch (Exception ex)
            {
                newException.AddException(ex);
            }

            return(RedirectToAction("Index"));
        }
Пример #3
0
        public async Task GetUnAssignedToCategoryByCreatorIdAsyncShouldReturnCorrectModelCollection()
        {
            var creatorId   = Guid.NewGuid().ToString();
            var firstQuizId = await this.CreateQuizAsync("First quiz", creatorId, "testquizpass");

            var secondQuizId = await this.CreateQuizAsync("Second quiz", creatorId);

            var categoryId = Guid.NewGuid().ToString();

            await this.AddQuizToCategoryAsync(categoryId, secondQuizId);

            var model = new QuizAssignViewModel()
            {
                Id         = firstQuizId,
                Name       = "First quiz",
                CreatorId  = creatorId,
                IsAssigned = false,
            };

            var resultModelCollection = await this.Service.GetUnAssignedToCategoryByCreatorIdAsync <QuizAssignViewModel>(categoryId, creatorId);

            Assert.IsAssignableFrom <IList <QuizAssignViewModel> >(resultModelCollection);
            Assert.Equal(model.Id, resultModelCollection.First().Id);
            Assert.Equal(model.Name, resultModelCollection.First().Name);
            Assert.Equal(model.CreatorId, resultModelCollection.First().CreatorId);
            Assert.False(resultModelCollection.First().IsAssigned);
        }