public async Task <Lesson> Edit(EditLessonInputModel model) { var lesson = Mapper.Map <Lesson>(model); this.lessonRepository.Update(lesson); await this.lessonRepository.SaveChangesAsync(); return(lesson); }
public void Edit_ValidInputModel_ReturnsEditeddLesson() { var lesson = new Lesson() { Id = 1, OrderId = 1, StartTime = new DateTime(2018, 12, 11, 12, 00, 00), EndTime = new DateTime(2018, 12, 11, 13, 0, 0), ThemeColor = "green", IsFullDay = false, Subject = "first lesson", Description = "asdfg" }; var returnValue = new List <Lesson>() { lesson }; this.repository.Setup(r => r.All()).Returns(returnValue.AsQueryable); this.repository.Setup(r => r.Update(lesson)).Callback(() => new Lesson() { Id = 1, OrderId = 1, StartTime = new DateTime(2018, 12, 11, 12, 00, 00), EndTime = new DateTime(2018, 12, 11, 13, 0, 0), ThemeColor = "green", IsFullDay = false, Subject = "first lesson", Description = "new description" }); var model = new EditLessonInputModel() { Id = 1, StartTime = new DateTime(2018, 12, 11, 12, 00, 00), EndTime = new DateTime(2018, 12, 11, 13, 0, 0), ThemeColor = "green", IsFullDay = false, Description = "new description", Status = LessonStatus.Canceled }; var result = this.lessonService.Edit(model).GetAwaiter().GetResult(); Assert.That(result, Is.TypeOf <Lesson>()); Assert.That(result.Description, Is.EqualTo("new description")); }
public ActionResult Edit(EditLessonInputModel model) { try { if (!this.ModelState.IsValid) { return(new JsonResult(this.ValidationProblem())); } var lesson = this.lessonService.Edit(model); return(this.RedirectToAction("Details", "Lessons", new { lessonId = lesson.Id })); } catch (Exception e) { return(this.View("_Error", e.Message)); } }