public async Task <IEnumerable <Provider> > GetProvidersByProviderVersionsId(string providerVersionId) { Guard.IsNullOrWhiteSpace(providerVersionId, nameof(providerVersionId)); ApiResponse <ApiProviderVersion> providerVersionsResponse = await _providersApiClientPolicy.ExecuteAsync(() => _providersApiClient.GetProvidersByVersion(providerVersionId)); Guard.ArgumentNotNull(providerVersionsResponse?.Content, nameof(providerVersionsResponse)); IEnumerable <Provider> Providers = _mapper.Map <IEnumerable <Provider> >(providerVersionsResponse.Content.Providers); return(Providers ?? new Provider[0]); }
public void QueryMethodThrowsExceptionIfProviderVersionResponseOrContentMissing( ApiResponse <ProviderVersion> providerVersionResponse) { string providerVersionId = NewRandomString(); GivenTheApiResponse(() => _providers.GetProvidersByVersion(providerVersionId), providerVersionResponse); Func <Task <IEnumerable <Provider> > > invocation = () => WhenTheProvidersAreQueriedByVersionId(providerVersionId); invocation .Should() .Throw <ArgumentNullException>(); }
public void Setup() { _providersApiClient = Substitute.For <IProvidersApiClient>(); _organisationGroupTargetProviderLookup = new OrganisationGroupTargetProviderLookup(_providersApiClient, new OrganisationGroupResiliencePolicies { ProvidersApiClient = Policy.NoOpAsync() }); _providerVersionId = "test-providers"; _providersApiClient .GetProvidersByVersion(Arg.Is(_providerVersionId)) .Returns(GetProviderVersion()); }
private async Task <Dictionary <string, Provider> > GetAllProviders(string providerVersionId) { if (!_providers.ContainsKey(providerVersionId)) { Common.ApiClient.Models.ApiResponse <ProviderVersion> providerResult = await _providersApiClientPolicy.ExecuteAsync(() => _providersApiClient.GetProvidersByVersion(providerVersionId)); if (providerResult == null) { throw new InvalidOperationException($"Provider lookup returned null for provider version id '{providerVersionId}'"); } if (providerResult.Content == null) { throw new InvalidOperationException($"Provider lookup content returned null for provider version id '{providerVersionId}'"); } if (providerResult.Content.Providers == null) { throw new InvalidOperationException($"Provider lookup provider content returned null for provider version id '{providerVersionId}'"); } _providers.Add(providerVersionId, providerResult.Content.Providers.ToDictionary(c => c.ProviderId, p => p)); } return(_providers[providerVersionId]); }
private void AndCoreProviderListExistsWithProviderVerionIdAndProviders(string providerVersionId, IEnumerable <Provider> scopedProviders) { _providersApiClient .GetProvidersByVersion(Arg.Is(providerVersionId)) .Returns(GenerateProviderVersion(scopedProviders)); }
private async Task <IEnumerable <Provider> > GetAllProviders(string providerVersionId) { if (!_providers.ContainsKey(providerVersionId)) { _providers.Add(providerVersionId, (await _providersApiClientPolicy.ExecuteAsync(() => _providersApiClient.GetProvidersByVersion(providerVersionId))).Content.Providers); } return(_providers[providerVersionId]); }