Beispiel #1
0
        public void Handle_CallsInnerApi_ReturnsExceptionWhenRegionsGetsBadRequest(
            List <GetProviderCourseLocationsResponse> apiResponseProviderCourseLocations,
            GetAllStandardRegionsQuery query,
            [Frozen] Mock <IRoatpCourseManagementApiClient <RoatpV2ApiConfiguration> > apiClientMock,
            GetAllStandardRegionsQueryHandler sut)
        {
            apiClientMock.Setup(c => c.GetWithResponseCode <List <RegionModel> >(It.Is <GetAllRegionsQuery>(c =>
                                                                                                            c.GetUrl.Equals(new GetAllRegionsQuery().GetUrl)))).
            ReturnsAsync(new ApiResponse <List <RegionModel> >(null, HttpStatusCode.BadRequest, "Error"));

            apiClientMock.Setup(c => c.GetWithResponseCode <List <GetProviderCourseLocationsResponse> >(It.Is <GetProviderCourseLocationsRequest>(c =>
                                                                                                                                                  c.GetUrl.Equals(new GetProviderCourseLocationsRequest(query.Ukprn, query.LarsCode).GetUrl)))).
            ReturnsAsync(new ApiResponse <List <GetProviderCourseLocationsResponse> >(apiResponseProviderCourseLocations, HttpStatusCode.OK, ""));

            Assert.ThrowsAsync <HttpRequestContentException>(() => sut.Handle(query, new CancellationToken()));
        }
Beispiel #2
0
        public async Task Handle_CallsInnerApi_ReturnsValidResponse(
            List <RegionModel> apiResponseGetAllRegions,
            List <GetProviderCourseLocationsResponse> apiResponseProviderCourseLocations,
            GetAllStandardRegionsQuery query,
            [Frozen] Mock <IRoatpCourseManagementApiClient <RoatpV2ApiConfiguration> > apiClientMock,
            GetAllStandardRegionsQueryHandler sut)
        {
            apiClientMock.Setup(c => c.GetWithResponseCode <List <RegionModel> >(It.Is <GetAllRegionsQuery>(c =>
                                                                                                            c.GetUrl.Equals(new GetAllRegionsQuery().GetUrl)))).
            ReturnsAsync(new ApiResponse <List <RegionModel> >(apiResponseGetAllRegions, HttpStatusCode.OK, ""));

            apiClientMock.Setup(c => c.GetWithResponseCode <List <GetProviderCourseLocationsResponse> >(It.Is <GetProviderCourseLocationsRequest>(c =>
                                                                                                                                                  c.GetUrl.Equals(new GetProviderCourseLocationsRequest(query.Ukprn, query.LarsCode).GetUrl)))).
            ReturnsAsync(new ApiResponse <List <GetProviderCourseLocationsResponse> >(apiResponseProviderCourseLocations, HttpStatusCode.OK, ""));

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

            result.Should().NotBeNull();
            result.Regions.Should().NotBeNull();
        }