示例#1
0
        public async Task Then_The_Service_Is_Called_And_The_Data_Returned(
            GetCoursesQuery request,
            TrainingCourses courseResponse,
            [Frozen] Mock <ICourseService> mockService,
            GetCoursesQueryHandler handler)
        {
            //Arrange
            request.Keyword         = null;
            request.RouteIds        = null;
            request.Levels          = null;
            request.ShortlistUserId = null;
            mockService.Setup(x => x.GetCourses(null, null, null, OrderBy.None, null)).ReturnsAsync(courseResponse);

            //Act
            var actual = await handler.Handle(request, CancellationToken.None);

            //Assert
            mockService.Verify(x => x.GetCourses(null, null, null, OrderBy.None, null), Times.Once);
            Assert.IsNotNull(actual);
            actual.Courses.Should().BeEquivalentTo(courseResponse.Courses);
            actual.Sectors.Should().BeEquivalentTo(courseResponse.Sectors);
            actual.TotalFiltered.Should().Be(courseResponse.TotalFiltered);
            actual.Total.Should().Be(courseResponse.Total);
            actual.ShortlistItemCount.Should().Be(courseResponse.ShortlistItemCount);
        }
示例#2
0
        public async Task The_Courses_Should_Be_Returned()
        {
            //Act
            var response = await _handler.Handle(_query, CancellationToken.None);

            //Assert
            Assert.AreEqual(_expectedCourses, response.Courses);
        }
        public async Task Then_The_Courses_Are_Returned()
        {
            //Act
            var actual = await _handler.Handle(new GetCoursesQuery(), new CancellationToken());

            //Assert
            actual.Courses.Should().BeEquivalentTo(_expectedCourses);
        }
        public async Task GetCoursesQueryTest()
        {
            var handler = new GetCoursesQueryHandler(_context);

            var result = await handler.Handle(new GetCoursesQuery { PageNumber = 1, PageSize = 50 }, CancellationToken.None);

            Assert.IsType <PagedResult <CoursePreviewDto> >(result);
            Assert.Equal(_context.Courses.Count(), result.Results.Count);
        }
示例#5
0
        public async Task Then_Gets_Courses_From_Service(
            GetCoursesQuery query,
            CourseList coursesFromService,
            [Frozen] Mock <ICourseService> mockService,
            GetCoursesQueryHandler handler)
        {
            mockService
            .Setup(service => service.GetCourses())
            .ReturnsAsync(coursesFromService);

            var result = await handler.Handle(query, CancellationToken.None);

            result.Courses.Should().BeEquivalentTo(coursesFromService.Courses);
        }
示例#6
0
        public async Task Then_Keywords_And_Levels_And_Sectors_Are_Passed_To_The_Service(
            GetCoursesQuery request,
            TrainingCourses courseResponse,
            [Frozen] Mock <ICourseService> mockService,
            GetCoursesQueryHandler handler)
        {
            //Arrange
            mockService.Setup(x => x.GetCourses(request.Keyword, request.RouteIds, request.Levels, OrderBy.None, request.ShortlistUserId)).ReturnsAsync(courseResponse);

            //Act
            var actual = await handler.Handle(request, CancellationToken.None);

            //Assert
            mockService.Verify(x => x.GetCourses(request.Keyword, request.RouteIds, request.Levels, OrderBy.None, request.ShortlistUserId), Times.Once);
            Assert.IsNotNull(actual);
        }
示例#7
0
        public async Task It_Returns_A_List_Of_Student_Dtos()
        {
            repositorySpy.Courses.Add(new CourseDto
            {
                Id      = Guid.NewGuid(),
                Title   = "Philosophy",
                Credits = 1,
            });

            var query  = new GetCoursesQuery();
            var result = await handler.Handle(query, new CancellationToken());

            Assert.True(result.IsSuccess);
            Assert.IsType <List <CourseDto> >(result.Value);
            Assert.Same(repositorySpy.Courses, result.Value);
        }
示例#8
0
        public async Task Should_return_filter_courses()
        {
            var createCourseCommand = new CreateCourseCommand()
            {
                Id          = Guid.NewGuid(),
                Code        = 10,
                Name        = "Course 1",
                Description = "Test"
            };

            var createCourseCommandHandler = new CreateCourseCommandHandler(this.autoMapper, this.context);

            var result = await createCourseCommandHandler.Handle(createCourseCommand, CancellationToken.None);

            result.ShouldBe(true);

            createCourseCommand.Id   = Guid.NewGuid();
            createCourseCommand.Code = 2;
            createCourseCommand.Name = "Test 2";

            result = await createCourseCommandHandler.Handle(createCourseCommand, CancellationToken.None);

            result.ShouldBe(true);

            var getCoursesQuery = new GetCoursesQuery()
            {
                FilterByName = "est"
            };
            var getCoursesQueryHandler = new GetCoursesQueryHandler(this.autoMapper, this.context);

            var list = await getCoursesQueryHandler.Handle(getCoursesQuery, CancellationToken.None);

            list.Where(c => c.Code == createCourseCommand.Code).Count().ShouldBe(1);

            getCoursesQuery = new GetCoursesQuery()
            {
                FilterByName = ""
            };
            getCoursesQueryHandler = new GetCoursesQueryHandler(this.autoMapper, this.context);

            list = await getCoursesQueryHandler.Handle(getCoursesQuery, CancellationToken.None);

            list.Where(c => c.Code == 10 || c.Code == 2).Count().ShouldBe(2);
        }