public async Task Then_Returns_The_Apprenticeships( long accountId, long accountLegalEntityId, DateTime startDateFrom, DateTime startDateTo, GetApprenticeshipListResponse response, [Frozen] Mock <ICommitmentsApiClient <CommitmentsConfiguration> > client, [Greedy] CommitmentsService sut) { client.Setup(x => x.Get <GetApprenticeshipListResponse>(It.Is <IGetApiRequest>(p => p.GetUrl == $"api/apprenticeships?accountId={accountId}&accountLegalEntityId={accountLegalEntityId}&startDateRangeFrom={WebUtility.UrlEncode(startDateFrom.ToString("u"))}&startDateRangeTo={WebUtility.UrlEncode(startDateTo.ToString("u"))}"))) .ReturnsAsync(response); var result = await sut.Apprenticeships(accountId, accountLegalEntityId, startDateFrom, startDateTo); result.Should().BeEquivalentTo(response.Apprenticeships); }
public async Task Then_The_Eligible_Apprenticeships_Are_Returned( GetEligibleApprenticeshipsSearchQuery query, GetApprenticeshipListResponse response, ApprenticeshipItem[] items, GetIncentiveDetailsResponse incentiveDetails, [Frozen] Mock <ICommitmentsService> commitmentsService, [Frozen] Mock <IEmployerIncentivesService> employerIncentivesService, GetEligibleApprenticeshipsSearchHandler handler ) { employerIncentivesService.Setup(x => x.GetIncentiveDetails()).ReturnsAsync(incentiveDetails); commitmentsService.Setup(x => x.Apprenticeships(query.AccountId, query.AccountLegalEntityId, incentiveDetails.EligibilityStartDate, incentiveDetails.EligibilityEndDate)) .ReturnsAsync(items); employerIncentivesService.Setup(x => x.GetEligibleApprenticeships(It.Is <IEnumerable <ApprenticeshipItem> >(c => c.Count().Equals(response.Apprenticeships.Count())))).ReturnsAsync(items); var actual = await handler.Handle(query, CancellationToken.None); actual.Apprentices.Should().BeEquivalentTo(items); }