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();
        }
Пример #2
0
        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));
        }
Пример #3
0
        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))));
        }
Пример #4
0
        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);
        }