public async Task Arrange() { var autoFixture = new Fixture(); _source = autoFixture.Create <GetChangeOfPartyRequestsQueryResult>(); _result = await _mapper.Map(TestHelper.Clone(_source)); }
public DetailsViewModelMapperFixture WithChangeOfPartyRequest(ChangeOfPartyRequestType requestType, ChangeOfPartyRequestStatus status, Party?withParty = null) { var newApprenticeshipId = Fixture.Create <long>(); GetChangeOfPartyRequestsResponse = new GetChangeOfPartyRequestsResponse { ChangeOfPartyRequests = new List <GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest> { new GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest { Id = 1, ChangeOfPartyType = requestType, OriginatingParty = requestType == ChangeOfPartyRequestType.ChangeEmployer ? Party.Provider : Party.Employer, Status = status, WithParty = withParty, NewApprenticeshipId = newApprenticeshipId } } }; _encodingService.Setup(x => x.Encode(It.Is <long>(id => id == newApprenticeshipId), EncodingType.ApprenticeshipId)) .Returns(EncodedNewApprenticeshipId); return(this); }
public DetailsViewModelMapperFixture() { Fixture = new Fixture(); Source = Fixture.Create <DetailsRequest>(); ApiResponse = Fixture.Create <GetApprenticeshipResponse>(); ApiResponse.ProviderId = Source.ProviderId; CohortReference = Fixture.Create <string>(); AgreementId = Fixture.Create <string>(); URL = Fixture.Create <string>(); PriceEpisodesApiResponse = new GetPriceEpisodesResponse { PriceEpisodes = new List <GetPriceEpisodesResponse.PriceEpisode> { new GetPriceEpisodesResponse.PriceEpisode { Cost = 100, FromDate = DateTime.UtcNow } } }; GetApprenticeshipUpdatesResponse = new GetApprenticeshipUpdatesResponse { ApprenticeshipUpdates = new List <GetApprenticeshipUpdatesResponse.ApprenticeshipUpdate>() }; GetDataLocksResponse = new GetDataLocksResponse { DataLocks = new List <DataLock>() }; GetChangeOfPartyRequestsResponse = new GetChangeOfPartyRequestsResponse { ChangeOfPartyRequests = new List <GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest>() }; GetChangeOfEmployerChainResponse = new GetChangeOfEmployerChainResponse { ChangeOfEmployerChain = new List <GetChangeOfEmployerChainResponse.ChangeOfEmployerLink>() }; GetNewerTrainingProgrammeVersionsResponse = new GetNewerTrainingProgrammeVersionsResponse() { NewerVersions = new List <TrainingProgramme>() }; GetTrainingProgrammeByStandardUIdResponse = new GetTrainingProgrammeResponse(); _encodingService = new Mock <IEncodingService>(); _encodingService.Setup(x => x.Encode(It.IsAny <long>(), EncodingType.CohortReference)).Returns(CohortReference); _encodingService.Setup(x => x.Encode(It.IsAny <long>(), EncodingType.PublicAccountLegalEntityId)).Returns(AgreementId); _authorizationService = new Mock <IAuthorizationService>(); EncodedNewApprenticeshipId = Fixture.Create <string>(); EncodedPreviousApprenticeshipId = Fixture.Create <string>(); }
public DetailsViewModelMapperFixture() { Fixture = new Fixture(); Source = Fixture.Create <DetailsRequest>(); ApiResponse = Fixture.Create <GetApprenticeshipResponse>(); ApiResponse.ProviderId = Source.ProviderId; CohortReference = Fixture.Create <string>(); AgreementId = Fixture.Create <string>(); URL = Fixture.Create <string>(); PriceEpisodesApiResponse = new GetPriceEpisodesResponse { PriceEpisodes = new List <GetPriceEpisodesResponse.PriceEpisode> { new GetPriceEpisodesResponse.PriceEpisode { Cost = 100, FromDate = DateTime.UtcNow } } }; GetApprenticeshipUpdatesResponse = new GetApprenticeshipUpdatesResponse { ApprenticeshipUpdates = new List <GetApprenticeshipUpdatesResponse.ApprenticeshipUpdate>() }; GetDataLocksResponse = new GetDataLocksResponse { DataLocks = new List <GetDataLocksResponse.DataLock>() }; GetChangeOfPartyRequestsResponse = new GetChangeOfPartyRequestsResponse { ChangeOfPartyRequests = new List <GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest>() }; _encodingService = new Mock <IEncodingService>(); _encodingService.Setup(x => x.Encode(It.IsAny <long>(), EncodingType.CohortReference)).Returns(CohortReference); _encodingService.Setup(x => x.Encode(It.IsAny <long>(), EncodingType.PublicAccountLegalEntityId)).Returns(AgreementId); EncodedNewApprenticeshipId = Fixture.Create <string>(); EncodedPreviousApprenticeshipId = Fixture.Create <string>(); _featureToggleService = new Mock <IFeatureTogglesService <ProviderFeatureToggle> >(); _featureToggleService .Setup(x => x.GetFeatureToggle(It.IsAny <string>())) .Returns(new ProviderFeatureToggle() { Feature = nameof(ProviderFeature.ChangeOfEmployer), IsEnabled = false, Whitelist = null }); }
public void SetUp() { //Arrange var autoFixture = new Fixture(); _request = autoFixture.Build <ApprenticeshipDetailsRequest>() .With(x => x.AccountHashedId, "123") .With(x => x.ApprenticeshipHashedId, "456") .Create(); _apprenticeshipResponse = autoFixture.Build <GetApprenticeshipResponse>() .With(x => x.CourseCode, "ABC") .With(x => x.DateOfBirth, autoFixture.Create <DateTime>()) .Create(); _priceEpisodesResponse = autoFixture.Build <GetPriceEpisodesResponse>() .With(x => x.PriceEpisodes, new List <PriceEpisode> { new PriceEpisode { Cost = 1000, ToDate = DateTime.Now.AddMonths(-1) } }) .Create(); _apprenticeshipUpdatesResponse = autoFixture.Build <GetApprenticeshipUpdatesResponse>() .With(x => x.ApprenticeshipUpdates, new List <ApprenticeshipUpdate> { new ApprenticeshipUpdate { OriginatingParty = Party.Employer } }) .Create(); _dataLocksResponse = autoFixture.Build <GetDataLocksResponse>().Create(); _changeOfPartyRequestsResponse = autoFixture.Build <GetChangeOfPartyRequestsResponse>().Create(); _trainingProgrammeResponse = autoFixture.Build <GetTrainingProgrammeResponse>().Create(); _mockCommitmentsApiClient = new Mock <ICommitmentsApiClient>(); _mockCommitmentsApiClient.Setup(r => r.GetApprenticeship(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_apprenticeshipResponse); _mockCommitmentsApiClient.Setup(c => c.GetPriceEpisodes(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_priceEpisodesResponse); _mockCommitmentsApiClient.Setup(c => c.GetApprenticeshipUpdates(It.IsAny <long>(), It.IsAny <GetApprenticeshipUpdatesRequest>(), CancellationToken.None)) .ReturnsAsync(_apprenticeshipUpdatesResponse); _mockCommitmentsApiClient.Setup(c => c.GetApprenticeshipDatalocksStatus(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_dataLocksResponse); _mockCommitmentsApiClient.Setup(c => c.GetChangeOfPartyRequests(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_changeOfPartyRequestsResponse); _mockCommitmentsApiClient.Setup(t => t.GetTrainingProgramme(_apprenticeshipResponse.CourseCode, It.IsAny <CancellationToken>())) .ReturnsAsync(_trainingProgrammeResponse); _mockEncodingService = new Mock <IEncodingService>(); _mapper = new ApprenticeshipDetailsRequestToViewModelMapper(_mockCommitmentsApiClient.Object, _mockEncodingService.Object, Mock.Of <ILogger <ApprenticeshipDetailsRequestToViewModelMapper> >()); }
public async Task WhenMoreThanOneChangeOfProviderRequestIsFound_ThenThePendingRequestIsMapped() { _changeOfPartyResponse = _autoFixture.Build <GetChangeOfPartyRequestsResponse>() .With(p => p.ChangeOfPartyRequests, GetChangeOfPartyRequestsWithMultipleRequestsMock()) .Create(); _mockCommitmentsApiClient.Setup(c => c.GetChangeOfPartyRequests(It.IsAny <long>(), It.IsAny <CancellationToken>())) .ReturnsAsync(_changeOfPartyResponse); _mockCommitmentsApiClient.Setup(c => c.GetProvider(_providerId, It.IsAny <CancellationToken>())) .ReturnsAsync(new GetProviderResponse { Name = "NewProvider" }); var result = await _mapper.Map(_request); Assert.AreEqual("NewProvider", result.NewProviderName); }
public GetAllTestsFixture() { _mediator = new Mock <IMediator>(); _mapper = new Mock <IModelMapper>(); _queryResult = new GetChangeOfPartyRequestsQueryResult(); _mapperResult = new GetChangeOfPartyRequestsResponse(); _autoFixture = new Fixture(); _mediator.Setup(x => x.Send(It.Is <GetChangeOfPartyRequestsQuery>(q => q.ApprenticeshipId == _apprenticeshipId), It.IsAny <CancellationToken>())) .ReturnsAsync(_queryResult); _mapper.Setup(x => x.Map <GetChangeOfPartyRequestsResponse>(_queryResult)).ReturnsAsync(_mapperResult); _apprenticeshipId = _autoFixture.Create <long>(); _controller = new ChangeOfPartyController(_mediator.Object, _mapper.Object); }
public void Arrange() { _autoFixture = new Fixture(); _changeOfPartyResponse = _autoFixture.Build <GetChangeOfPartyRequestsResponse>() .With(r => r.ChangeOfPartyRequests, GetChangeOfPartyRequestsMock()) .Create(); _apprenticeshipResponse = _autoFixture.Build <GetApprenticeshipResponse>() .Create(); _priceEpisodesResponse = _autoFixture.Build <GetPriceEpisodesResponse>() .With(p => p.PriceEpisodes, GetPriceEpisodesMock()) .Create(); _providerResponse = _autoFixture.Build <GetProviderResponse>() .Create(); _request = _autoFixture.Build <ViewChangesRequest>() .Create(); _mockCommitmentsApiClient = new Mock <ICommitmentsApiClient>(); _mockCommitmentsApiClient.Setup(c => c.GetChangeOfPartyRequests(It.IsAny <long>(), It.IsAny <CancellationToken>())) .ReturnsAsync(_changeOfPartyResponse); _mockCommitmentsApiClient.Setup(c => c.GetApprenticeship(It.IsAny <long>(), It.IsAny <CancellationToken>())) .ReturnsAsync(_apprenticeshipResponse); _mockCommitmentsApiClient.Setup(c => c.GetPriceEpisodes(It.IsAny <long>(), It.IsAny <CancellationToken>())) .ReturnsAsync(_priceEpisodesResponse); _mockCommitmentsApiClient.Setup(c => c.GetProvider(It.IsAny <long>(), It.IsAny <CancellationToken>())) .ReturnsAsync(_providerResponse); _mockEncodingService = new Mock <IEncodingService>(); _mockEncodingService.Setup(c => c.Encode(It.IsAny <long>(), EncodingType.CohortReference)) .Returns(_cohortReference); _mockCommitmentsApiClient.Setup(c => c.GetCohort(It.IsAny <long>(), It.IsAny <CancellationToken>())) .ReturnsAsync(GetCohortResponseMock()); _mapper = new ViewChangesViewModelMapper(_mockCommitmentsApiClient.Object, _mockEncodingService.Object); }
public IChangeEmployerViewModelMapperTestsFixture WithChangeOfPartyRequest(ChangeOfPartyRequestStatus?requestStatus) { if (requestStatus.HasValue) { ChangeOfPartyRequests = new GetChangeOfPartyRequestsResponse { ChangeOfPartyRequests = new List <GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest> { new GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest { ChangeOfPartyType = ChangeOfPartyRequestType.ChangeEmployer, OriginatingParty = Party.Provider, Status = requestStatus.Value, EmployerName = EmployerName, Price = Price, StartDate = StartDate, EndDate = EndDate, CohortId = AutoFixture.Create <long>(), WithParty = AutoFixture.Create <Party>(), NewApprenticeshipId = requestStatus == ChangeOfPartyRequestStatus.Approved ? AutoFixture.Create <long>() : default(long?) } } }; } else { ChangeOfPartyRequests = new GetChangeOfPartyRequestsResponse { ChangeOfPartyRequests = new List <GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest>() }; } _commitmentsApiClient .Setup(x => x.GetChangeOfPartyRequests(It.Is <long>(a => a == ApprenticeshipId), It.IsAny <CancellationToken>())).ReturnsAsync(ChangeOfPartyRequests); return(this); }
public IChangeEmployerViewModelMapperTestsFixture() { AutoFixture = new Fixture(); ProviderId = 123; ApprenticeshipId = 234; ApprenticeshipHashedId = "SD23DS24"; EmployerName = AutoFixture.Create <string>(); StartDate = AutoFixture.Create <DateTime>(); EndDate = AutoFixture.Create <DateTime>(); Price = AutoFixture.Create <int>(); CohortReference = AutoFixture.Create <string>(); EncodedNewApprenticeshipId = AutoFixture.Create <string>(); _changeEmployerRequest = new ChangeEmployerRequest { ApprenticeshipId = ApprenticeshipId, ProviderId = ProviderId, ApprenticeshipHashedId = ApprenticeshipHashedId }; Apprenticeship = new GetApprenticeshipResponse { EmployerName = AutoFixture.Create <string>(), StartDate = AutoFixture.Create <DateTime>() }; PriceEpisodes = new GetPriceEpisodesResponse { PriceEpisodes = new List <GetPriceEpisodesResponse.PriceEpisode> { new GetPriceEpisodesResponse.PriceEpisode { FromDate = DateTime.MinValue, Cost = AutoFixture.Create <int>() } } }; ChangeOfPartyRequests = new GetChangeOfPartyRequestsResponse { ChangeOfPartyRequests = new List <GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest>() }; _commitmentsApiClient = new Mock <ICommitmentsApiClient>(); _commitmentsApiClient .Setup(x => x.GetChangeOfPartyRequests(It.Is <long>(a => a == ApprenticeshipId), It.IsAny <CancellationToken>())).ReturnsAsync(ChangeOfPartyRequests); _commitmentsApiClient.Setup(x => x.GetApprenticeship(It.Is <long>(a => a == ApprenticeshipId), It.IsAny <CancellationToken>())).ReturnsAsync(Apprenticeship); _commitmentsApiClient.Setup(x => x.GetPriceEpisodes(It.Is <long>(a => a == ApprenticeshipId), It.IsAny <CancellationToken>())).ReturnsAsync(PriceEpisodes); _encodingService = new Mock <IEncodingService>(); _encodingService.Setup(x => x.Encode(It.IsAny <long>(), EncodingType.CohortReference)) .Returns(CohortReference); _encodingService.Setup(x => x.Encode(It.IsAny <long>(), EncodingType.ApprenticeshipId)) .Returns(EncodedNewApprenticeshipId); _sut = new IChangeEmployerViewModelMapper(_commitmentsApiClient.Object, _encodingService.Object); }
public void SetUp() { //Arrange _request = autoFixture.Build <ApprenticeshipDetailsRequest>() .With(x => x.AccountHashedId, $"A123") .With(x => x.ApprenticeshipHashedId, $"A{ApprenticeshipIdFirst}") .Create(); _apprenticeshipResponse = autoFixture.Build <GetApprenticeshipResponse>() .With(x => x.Id, ApprenticeshipIdFirst) .With(x => x.CourseCode, "123") .With(x => x.StandardUId, "ST0001_1.0") .With(x => x.Version, "1.0") .With(x => x.DateOfBirth, autoFixture.Create <DateTime>()) .Create(); _priceEpisodesResponse = autoFixture.Build <GetPriceEpisodesResponse>() .With(x => x.PriceEpisodes, new List <PriceEpisode> { new PriceEpisode { Cost = 1000, ToDate = DateTime.Now.AddMonths(-1) } }) .Create(); _apprenticeshipUpdatesResponse = autoFixture.Build <GetApprenticeshipUpdatesResponse>() .With(x => x.ApprenticeshipUpdates, new List <ApprenticeshipUpdate> { new ApprenticeshipUpdate { OriginatingParty = Party.Employer } }) .Create(); _dataLocksResponse = autoFixture.Build <GetDataLocksResponse>().Create(); _changeOfPartyRequestsResponse = autoFixture.Build <GetChangeOfPartyRequestsResponse>().Create(); var trainingProgrammeByStandardUId = autoFixture.Build <TrainingProgramme>() .With(x => x.CourseCode, _apprenticeshipResponse.CourseCode) .With(x => x.StandardUId, "ST0001_1.0") .With(x => x.Version, "1.0") .Create(); _getTrainingProgrammeByStandardUId = new GetTrainingProgrammeResponse { TrainingProgramme = trainingProgrammeByStandardUId }; var framework = autoFixture.Build <TrainingProgramme>() .Without(x => x.Version) .Without(x => x.StandardUId) .With(x => x.CourseCode, "1-2-3") .Create(); _getTrainingProgrammeResponse = new GetTrainingProgrammeResponse { TrainingProgramme = framework }; var trainingProgrammeVersions = autoFixture.Build <TrainingProgramme>().CreateMany(2).ToList(); trainingProgrammeVersions[0].Version = "1.1"; trainingProgrammeVersions[1].Version = "1.2"; _newerTrainingProgrammeVersionsResponse = autoFixture.Build <GetNewerTrainingProgrammeVersionsResponse>() .With(x => x.NewerVersions, trainingProgrammeVersions).Create(); _changeOfProviderChainReponse = autoFixture.Build <GetChangeOfProviderChainResponse>().Create(); _mockCommitmentsApiClient = new Mock <ICommitmentsApiClient>(); _mockCommitmentsApiClient.Setup(r => r.GetApprenticeship(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_apprenticeshipResponse); _mockCommitmentsApiClient.Setup(c => c.GetPriceEpisodes(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_priceEpisodesResponse); _mockCommitmentsApiClient.Setup(c => c.GetApprenticeshipUpdates(It.IsAny <long>(), It.IsAny <GetApprenticeshipUpdatesRequest>(), CancellationToken.None)) .ReturnsAsync(_apprenticeshipUpdatesResponse); _mockCommitmentsApiClient.Setup(c => c.GetApprenticeshipDatalocksStatus(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_dataLocksResponse); _mockCommitmentsApiClient.Setup(c => c.GetChangeOfPartyRequests(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_changeOfPartyRequestsResponse); _mockCommitmentsApiClient.Setup(t => t.GetNewerTrainingProgrammeVersions(It.IsAny <string>(), It.IsAny <CancellationToken>())) .ReturnsAsync(_newerTrainingProgrammeVersionsResponse); _mockCommitmentsApiClient.Setup(t => t.GetChangeOfProviderChain(It.IsAny <long>(), CancellationToken.None)) .ReturnsAsync(_changeOfProviderChainReponse); _mockCommitmentsApiClient.Setup(c => c.GetTrainingProgrammeVersionByStandardUId(It.IsAny <string>(), CancellationToken.None)) .ReturnsAsync(_getTrainingProgrammeByStandardUId); _mockCommitmentsApiClient.Setup(c => c.GetTrainingProgramme(It.IsAny <string>(), CancellationToken.None)) .ReturnsAsync(_getTrainingProgrammeResponse); _mockEncodingService = new Mock <IEncodingService>(); _mockEncodingService.Setup(t => t.Encode(It.IsAny <long>(), It.IsAny <EncodingType>())) .Returns((long value, EncodingType encodingType) => $"A{value}"); _mockEncodingService.Setup(t => t.Decode(It.IsAny <string>(), It.IsAny <EncodingType>())) .Returns((string value, EncodingType encodingType) => long.Parse(Regex.Replace(value, "[A-Za-z ]", ""))); _mapper = new ApprenticeshipDetailsRequestToViewModelMapper(_mockCommitmentsApiClient.Object, _mockEncodingService.Object, Mock.Of <ILogger <ApprenticeshipDetailsRequestToViewModelMapper> >()); }