public void ShouldMapFundingDataZoneProviderPaymentOrganisationUkprnToProviderPaymentOrganisationIdentifier() { // Arrange FundingDataZoneProvider fundingDataZoneProvider = new FundingDataZoneProvider() { PaymentOrganisationUkprn = new RandomString() }; MapperConfiguration config = new MapperConfiguration(c => c.AddProfile <ProviderVersionsMappingProfile>()); IMapper mapper = config.CreateMapper(); // Act Models.Providers.Provider provider = mapper.Map <Models.Providers.Provider>(fundingDataZoneProvider); // Assert provider.PaymentOrganisationIdentifier.Should() .Be(fundingDataZoneProvider.PaymentOrganisationUkprn); }
public DasProvider CreateDasProviderFromProvider(int exportKey, Models.Providers.Provider provider, Core.DataStore.CosmosDb.Models.FeChoice feChoice) { if (!int.TryParse(provider.UnitedKingdomProviderReferenceNumber, out var ukprn)) { throw new InvalidUkprnException(provider.UnitedKingdomProviderReferenceNumber); } if (!provider.ProviderContact.Any()) { throw new MissingContactException(); } try { var contactDetails = provider.ProviderContact.FirstOrDefault(); return(new DasProvider { Id = provider.ProviderId ?? _intIdentifier + exportKey, Email = contactDetails?.ContactEmail, EmployerSatisfaction = feChoice?.EmployerSatisfaction, LearnerSatisfaction = feChoice?.LearnerSatisfaction, MarketingInfo = provider.MarketingInformation, Name = provider.Name, TradingName = provider.Name, NationalProvider = provider.NationalApprenticeshipProvider, UKPRN = ukprn, Website = contactDetails?.ContactWebsiteAddress, Phone = !string.IsNullOrWhiteSpace(contactDetails?.ContactTelephone1) ? contactDetails?.ContactTelephone1 : contactDetails?.ContactTelephone2 }); } catch (Exception e) { throw new ProviderExportException(ukprn, e); } }