示例#1
0
        public async Task <ActionResult <CourseResponse> > GetCourse(int id)
        {
            var query  = new GetCourseByIdQuery(id);
            var course = await _mediator.Send(query);

            return(Ok(course));
        }
        public async Task <IActionResult> GetById([FromRoute] int courseId)
        {
            var query = new GetCourseByIdQuery {
                Id = courseId
            };

            return(Ok(await Mediator.Send(query)));
        }
示例#3
0
        public void GetCourseTest_Should_Throw_NotFound_Exception()
        {
            //Arrange
            var request = new GetCourseByIdQuery(9999);
            var handler = new GetCourseHandler(_mapper, _fakeRepository);

            //Act && Assert
            Assert.ThrowsAsync <CourseNotFoundException>(() => handler.Handle(request, new CancellationToken()));
        }
示例#4
0
        public async Task <CourseDetail> HandleAsync(GetCourseByIdQuery query)
        {
            var course = await _repository.GetById(query.Id);

            if (course == null)
            {
                throw new EntityNotFoundException($"Course with ID '{query.Id}' Not Found.");
            }

            return(_mapper.Map <CourseDetail>(course));
        }
示例#5
0
        public async Task GetCourseTest_Should_Return_Object()
        {
            //Arrange
            var request = new GetCourseByIdQuery(1);
            var handler = new GetCourseHandler(_mapper, _fakeRepository);

            //Act
            var course = await handler.Handle(request, new CancellationToken());

            //Assert
            Assert.AreEqual(course.Id, 1);
            Assert.AreEqual(course.Price, 5000);
        }
示例#6
0
        public async Task <IActionResult> GetCourseDetails([FromQuery] GetCourseByIdQuery query)
        {
            var result = await _mediator.Send(query);

            return(Ok(result));
        }
        public IHttpActionResult GetById([FromUri] GetCourseByIdQuery query)
        {
            var result = querybus.Query <GetCourseByIdQuery, CourseModel>(query);

            return(Ok(result));
        }