public async Task <IActionResult> Edit(EditQuizInputModel input, string id) { if (input.CreatorId != this.userManager.GetUserId(this.User)) { this.Redirect("/Home/Index"); } if (!this.ModelState.IsValid) { return(this.RedirectToAction("Edit", "Quizes", new { id })); } var quizId = await this.quizService.UpdateQuizAsync(input, id); return(this.RedirectToAction("AllQuizInfo", "Quizes", new { id = quizId })); }
public async Task <string> UpdateQuizAsync(EditQuizInputModel input, string quizId) { var quiz = await this.quizesRepo .All() .Where(x => x.Id == quizId) .FirstOrDefaultAsync(); quiz.Name = input.Name; quiz.Description = input.Description; quiz.TotalTimeToComplete = input.TotalTimeToComplete; this.quizesRepo.Update(quiz); await this.quizesRepo.SaveChangesAsync(); return(quiz.Id); }
public async Task UpdateQuizShouldUpdateCorectly() { var input = new EditQuizInputModel() { Name = "TestQuiz", Description = "Dummy", TotalTimeToComplete = 1, }; await this.Service.UpdateQuizAsync(input, this.quiz.Id); var result = await this.DbContext.Quizes.FirstOrDefaultAsync(); Assert.Equal(input.Name, result.Name); Assert.Equal(input.Description, result.Description); Assert.Equal(input.TotalTimeToComplete, result.TotalTimeToComplete); Assert.Equal(this.quiz.Id, result.Id); }