public async Task<IActionResult> CreateLessonAsync([FromBody] CreateLessonRequest request) { if (request != null && ModelState.IsValid) { CreateLessonDTO createLessonDTO = new CreateLessonDTO { Lesson = mapper.Map<LessonDTO>(request), TeacherEmail = User.Identity.Name }; if (await lessonService.AddLessonAsync(createLessonDTO)) { return Ok(); } } return BadRequest(); }
public async Task <IActionResult> Create([FromBody] CreateLessonRequest lessonRequest) { var lesson = new Lesson { Id = Guid.NewGuid().ToString(), Class = lessonRequest.Class, Code = lessonRequest.Code, Name = lessonRequest.Name, Day = lessonRequest.Day, Time = lessonRequest.Time, UserId = HttpContext.GetUserId() }; await _LessonService.CreateLesson(lesson); var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUri = baseUrl + "/" + ApiRoutes.Lesson.Get.Replace("{lessonId}", lesson.Id); return(Created(locationUri, lesson)); }
public async Task CheckAfterAddingLesson() { var req = new CreateLessonRequest { Name = "Lesson Test 1232222" }; var res = await _coursesController.CreateLesson(1, 1, req); var okRes = res as OkObjectResult; Assert.NotNull(okRes); Assert.Equal(200, okRes.StatusCode); var courses = await _coursesController.GetAllCourses(); var getOkRes = courses as OkObjectResult; Assert.NotNull(getOkRes); Assert.Equal(200, getOkRes.StatusCode); var result = (IEnumerable <CourseResponse>)getOkRes.Value; Assert.Contains(req.Name, result.SelectMany(x => x.Chapters.SelectMany(y => y.Lessons.Select(z => z.Name)))); }
public void canCreateLesson(CreateLessonRequest req, Section section) { //Seed data DbRepository <Section> ._db.Add(section); //Arrange var sut = new ServiceStack(); var s = DbRepository <Section> ._db.First(); var c = s.Courses.First(); var cur = c.Lessons.Count; req.CourseId = c.Id; req.SectionId = section.Id; //Act sut.CreateLesson(req); //Assert var expected = cur + 1; var actual = DbRepository <Section> ._db.First().Courses.First().Lessons.Count; Assert.Equal(expected, actual); }