public static RequestStatus GetStatus(this CommitmentListItem commitment) { return(StatusCalculator.GetStatus( commitment.EditStatus, commitment.ApprenticeshipCount, commitment.LastAction, commitment.AgreementStatus, commitment.TransferSenderId, commitment.TransferApprovalStatus)); }
public void CommitmentIsTransferFundedAndStatusesAreInvalid(TransferApprovalStatus transferApprovalStatus, EditStatus editStatus) { var commitment = new CommitmentListItem { AgreementStatus = AgreementStatus.NotAgreed, ApprenticeshipCount = 1, LastAction = LastAction.None, EditStatus = editStatus, TransferSenderId = 1, TransferApprovalStatus = transferApprovalStatus }; Assert.Throws <Exception>(() => commitment.GetStatus()); }
public void ThenTheRequestHasTheCorrectStatus(LastAction lastAction, AgreementStatus agreementStatus, RequestStatus expectRequestStatus) { var commitment = new CommitmentListItem { LastAction = lastAction, AgreementStatus = agreementStatus, EditStatus = EditStatus.ProviderOnly, ApprenticeshipCount = 2 }; //Act var status = commitment.GetStatus(); //Assert Assert.AreEqual(expectRequestStatus, status); }
public void CommitmentIsTransferFundedAndInValidState(RequestStatus expectedResult, EditStatus editStatus, TransferApprovalStatus transferApprovalStatus) { var commitment = new CommitmentListItem { AgreementStatus = AgreementStatus.NotAgreed, ApprenticeshipCount = 1, LastAction = LastAction.None, EditStatus = editStatus, TransferSenderId = 1, TransferApprovalStatus = transferApprovalStatus }; var status = commitment.GetStatus(); Assert.AreEqual(expectedResult, status); }
public void WhenThereAreNoApprentices(RequestStatus expectedResult, LastAction lastAction) { var commitment = new CommitmentListItem { LastAction = lastAction, EditStatus = EditStatus.Both, ApprenticeshipCount = 2, AgreementStatus = AgreementStatus.BothAgreed, ProviderLastUpdateInfo = new LastUpdateInfo() }; var status = commitment.GetStatus(); status.Should().Be(expectedResult); }
public async Task <CommitmentListItemViewModel> MapToCommitmentListItemViewModelAsync(CommitmentListItem commitment, Func <CommitmentListItem, Task <string> > latestMessageFunc) { var messageTask = latestMessageFunc.Invoke(commitment); return(new CommitmentListItemViewModel { HashedCommitmentId = _hashingService.HashValue(commitment.Id), Name = commitment.Reference, LegalEntityName = commitment.LegalEntityName, ProviderName = commitment.ProviderName, Status = _statusCalculator.GetStatus(commitment.EditStatus, commitment.ApprenticeshipCount, commitment.LastAction, commitment.AgreementStatus), ShowViewLink = commitment.EditStatus == EditStatus.EmployerOnly, LatestMessage = await messageTask }); }