public void ThenApprenticeshipMustNotAlreadyHaveAPendingOrApprovedRequest(ChangeOfPartyRequestStatus status, bool expectThrow) { _fixture .WithExistingChangeOfPartyRequest(status) .CreateChangeOfPartyRequest(); if (expectThrow) { _fixture.VerifyException <DomainException>(); } else { _fixture.VerifyResult(); } }
public async Task ShowChangeTrainingProviderLink_IsMapped(ChangeOfPartyRequestStatus changeOfPartyRequestStatus, bool flag) { //Arrange _apprenticeshipResponse.Status = ApprenticeshipStatus.Stopped; _changeOfPartyRequestsResponse.ChangeOfPartyRequests = new List <ChangeOfPartyRequest> { new ChangeOfPartyRequest { Status = changeOfPartyRequestStatus, ChangeOfPartyType = ChangeOfPartyRequestType.ChangeProvider } }; //Act var result = await _mapper.Map(_request); //Assert Assert.AreEqual(result.ShowChangeTrainingProviderLink, flag); }
public async Task HasApprovedChangeOfEmployerRequest_IsMapped(ChangeOfPartyRequestStatus changeOfPartyRequestStatus, bool pendingChangeRequest) { //Arrange _changeOfPartyRequestsResponse.ChangeOfPartyRequests = new List <GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest>() { new GetChangeOfPartyRequestsResponse.ChangeOfPartyRequest { Id = 1, ChangeOfPartyType = ChangeOfPartyRequestType.ChangeEmployer, OriginatingParty = Party.Employer, Status = changeOfPartyRequestStatus, WithParty = Party.Provider } }; //Act var result = await _mapper.Map(_request); //Assert Assert.AreEqual(pendingChangeRequest, result.HasApprovedChangeOfEmployerRequest); }
public void Then_CoE_request_not_yet_approved_dont_show_ChangeProviderLink(ChangeOfPartyRequestStatus changeOfPartyRequestStatus, bool flag) { //Arrange var apprenticeship = new Apprenticeship { PaymentStatus = PaymentStatus.Withdrawn, StartDate = new DateTime(2018, 05, 05), StopDate = new DateTime(2018, 11, 05), ChangeOfPartyRequests = new List <ChangeOfPartyRequest> { new ChangeOfPartyRequest { Status = changeOfPartyRequestStatus, ChangeOfPartyType = ChangeOfPartyRequestType.ChangeEmployer } } }; //Act var viewModel = Sut.MapToApprenticeshipDetailsViewModel(apprenticeship); //Assert viewModel.ShowChangeTrainingProviderLink.Should().Be(flag); }
public async Task Then_CoE_request_approved_by_parties_apprenticeship_moved_from_me_dont_show_ChangeProviderLink(ChangeOfPartyRequestStatus changeOfPartyRequestStatus, bool flag) { //Arrange _apprenticeshipResponse.Status = ApprenticeshipStatus.Stopped; _apprenticeshipResponse.ContinuationOfId = null; /* apprenticeship has moved from me to another employer*/ _changeOfPartyRequestsResponse.ChangeOfPartyRequests = new List <ChangeOfPartyRequest> { new ChangeOfPartyRequest { Status = changeOfPartyRequestStatus, ChangeOfPartyType = ChangeOfPartyRequestType.ChangeEmployer } }; //Act var result = await _mapper.Map(_request); //Assert Assert.AreEqual(result.ShowChangeTrainingProviderLink, flag); }
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 async Task ThenPendingOrApprovedChangeOfPartyRequestPreventsChangeOfEmployer(ChangeOfPartyRequestStatus status, bool expectChangeEmployerEnabled) { _fixture .WithChangeOfEmployerToggle(true) .WithChangeOfPartyRequest(ChangeOfPartyRequestType.ChangeEmployer, status); await _fixture.Map(); Assert.AreEqual(expectChangeEmployerEnabled, _fixture.Result.IsChangeOfEmployerEnabled); }
public WhenWithdrawnTestFixture WithStatus(ChangeOfPartyRequestStatus status) { _changeOfPartyRequest.SetValue(x => x.Status, status); return(this); }
public void Then_If_Status_Is_Invalid_Then_Throws(ChangeOfPartyRequestStatus status) { _fixture.WithStatus(status); _fixture.Withdraw(); _fixture.VerifyException(); }
public void Then_CoE_request_approved_by_parties_apprenticeship_moved_from_me_dont_show_ChangeProviderLink(ChangeOfPartyRequestStatus changeOfPartyRequestStatus, bool flag) { //Arrange var apprenticeship = new Apprenticeship { PaymentStatus = PaymentStatus.Withdrawn, StartDate = new DateTime(2018, 05, 05), StopDate = new DateTime(2018, 11, 05), ContinuationOfId = null, /* apprenticeship has moved from me to another employer*/ ChangeOfPartyRequests = new List <ChangeOfPartyRequest> { new ChangeOfPartyRequest { Status = changeOfPartyRequestStatus, ChangeOfPartyType = ChangeOfPartyRequestType.ChangeEmployer } } }; //Act var viewModel = Sut.MapToApprenticeshipDetailsViewModel(apprenticeship); //Assert viewModel.ShowChangeTrainingProviderLink.Should().Be(flag); }
public async Task Then_With_A_ChangeOfPartyRequest_Pending_Or_Approved_Then_Result_Is_ChangeEmployerRequestDetailsViewModel(ChangeOfPartyRequestStatus status) { _fixture.WithChangeOfPartyRequest(status); await _fixture.Act(); _fixture.VerifyResult <ChangeEmployerRequestDetailsViewModel>(); }
public async Task Then_With_A_ChangeOfPartyRequest_Rejected_Or_Withdrawn_Then_Result_Is_InformViewModel(ChangeOfPartyRequestStatus status) { _fixture.WithChangeOfPartyRequest(status); await _fixture.Act(); _fixture.VerifyResult <InformViewModel>(); }
public WhenCreatingChangeOfPartyRequestFixture WithExistingChangeOfPartyRequest(ChangeOfPartyRequestStatus status) { var request = new CommitmentsV2.Models.ChangeOfPartyRequest(); var t = typeof(CommitmentsV2.Models.ChangeOfPartyRequest); t.GetProperty("Status").SetValue(request, status, null); PreviousChangeOfPartyRequests.Add(request); return(this); }