public void Handle_CallsInnerApi_ThrowsException(
     [Frozen] Mock <IRoatpCourseManagementApiClient <RoatpV2ApiConfiguration> > apiClientMock,
     GetAllCoursesQuery query,
     GetAllCoursesQueryHandler sut)
 {
     apiClientMock.Setup(c => c.Get <List <GetAllCoursesResponse> >(It.IsAny <GetAllCoursesRequest>())).ThrowsAsync(new Exception());
     Assert.ThrowsAsync <Exception>(() => sut.Handle(query, new CancellationToken()));
 }
        public async Task Handle_CallsInnerApi_ReturnsNullSetWithNullCourses(
            [Frozen] Mock <IRoatpCourseManagementApiClient <RoatpV2ApiConfiguration> > apiClientMock,
            GetAllCoursesQuery query,
            GetAllCoursesQueryHandler sut)
        {
            apiClientMock.Setup(c => c.Get <List <GetAllCoursesResponse> >(It.IsAny <GetAllCoursesRequest>())).ReturnsAsync((List <GetAllCoursesResponse>)null);
            var result = await sut.Handle(query, new CancellationToken());

            result.Should().BeNull();
        }
示例#3
0
        public void GetCourses_WhenItsExist_ShouldSuccess()
        {
            using (var sut = new SystemUnderTest())
            {
                var course  = sut.CreateCourse("Kurs Angielskiego A1", 2019, 350);
                var courses = new List <Course> {
                    course
                };
                var unitOfWorkSubstitute = Substitute.For <IUnitOfWork>();

                unitOfWorkSubstitute.CoursesRepository.GetAll().Returns(courses);

                var query        = new GetAllCoursesQuery();
                var queryHandler = new GetAllCoursesQueryHandler(unitOfWorkSubstitute);
                var coursesQuery = queryHandler.Handle(query);

                coursesQuery.Count.Should().Be(1);
            }
        }
        public async Task Handle_CallsInnerApi_ReturnsResults(
            [Frozen] Mock <IRoatpCourseManagementApiClient <RoatpV2ApiConfiguration> > apiClientMock,
            List <GetAllCoursesResponse> courses,
            GetAllCoursesQuery query,
            GetAllCoursesQueryHandler sut)
        {
            apiClientMock.Setup(c => c.Get <List <GetAllCoursesResponse> >(It.IsAny <GetAllCoursesRequest>())).ReturnsAsync(courses);
            var result = await sut.Handle(query, new CancellationToken());

            result.Should().BeEquivalentTo(courses, options =>
                                           options.Excluding(c => c.IfateReferenceNumber)
                                           .Excluding(c => c.StandardInfoUrl)
                                           .Excluding(c => c.ContactUsPhoneNumber)
                                           .Excluding(c => c.ContactUsEmail)
                                           .Excluding(c => c.ContactUsPageUrl)
                                           .Excluding(c => c.IsConfirmed)
                                           .Excluding(c => c.HasNationalDeliveryOption)
                                           .Excluding(c => c.DeliveryModels)
                                           .Excluding(c => c.HasHundredPercentEmployerDeliveryOption)
                                           );
        }