Example #1
0
        protected override TransferRequestForSenderViewModel Map(GetTransferRequestResponse transferRequestResponse, GetPledgeApplicationResponse getPledgeApplicationResponse)
        {
            var viewModel = base.Map(transferRequestResponse, getPledgeApplicationResponse);

            viewModel.TransferReceiverPublicHashedAccountId = _encodingService.Encode(transferRequestResponse.ReceivingEmployerAccountId, EncodingType.PublicAccountId);
            viewModel.TransferSenderHashedAccountId         = _encodingService.Encode(transferRequestResponse.SendingEmployerAccountId, EncodingType.AccountId);
            viewModel.TransferReceiverName = transferRequestResponse.LegalEntityName;

            return(viewModel);
        }
Example #2
0
        public void SetUp()
        {
            //Arrange
            var autoFixture = new Fixture();

            _request = autoFixture.Build <TransferRequestRequest>()
                       .With(x => x.AccountHashedId, $"A{AccountIdFirst}")
                       .With(x => x.TransferRequestHashedId, $"A{TransferRequestIdFirst}")
                       .Create();

            _getPledgeApplicationId = autoFixture.Create <int>();

            _getTransferRequestResponse = autoFixture.Build <GetTransferRequestResponse>()
                                          .With(x => x.ReceivingEmployerAccountId, ReceivingEmployerAccountIdFirst)
                                          .With(x => x.TransferRequestId, TransferRequestIdFirst)
                                          .With(x => x.PledgeApplicationId, _getPledgeApplicationId)
                                          .Create();

            _mockCommitmentsApiClient = new Mock <ICommitmentsApiClient>();
            _mockCommitmentsApiClient.Setup(r => r.GetTransferRequestForSender(It.IsAny <long>(), It.IsAny <long>(), CancellationToken.None))
            .ReturnsAsync(_getTransferRequestResponse);

            _getPledgeApplicationResponse = autoFixture.Create <GetPledgeApplicationResponse>();

            _mockApprovalsApiClient = new Mock <IApprovalsApiClient>();
            _mockApprovalsApiClient.Setup(r => r.GetPledgeApplication(_getPledgeApplicationId, CancellationToken.None))
            .ReturnsAsync(_getPledgeApplicationResponse);

            _mockEncodingService = new Mock <IEncodingService>();

            _mockEncodingService.Setup(t => t.Encode(It.IsAny <long>(), EncodingType.AccountId))
            .Returns((long value, EncodingType encodingType) => $"A{value}");
            _mockEncodingService.Setup(t => t.Encode(It.IsAny <long>(), EncodingType.PublicAccountId))
            .Returns((long value, EncodingType encodingType) => $"P{value}");
            _mockEncodingService.Setup(t => t.Encode(It.IsAny <long>(), EncodingType.TransferRequestId))
            .Returns((long value, EncodingType encodingType) => $"T{value}");
            _mockEncodingService.Setup(t => t.Encode(It.IsAny <long>(), EncodingType.CohortReference))
            .Returns((long value, EncodingType encodingType) => $"C{value}");
            _mockEncodingService.Setup(t => t.Encode(It.IsAny <long>(), EncodingType.PledgeId))
            .Returns((long value, EncodingType encodingType) => $"PL{value}");
            _mockEncodingService.Setup(t => t.Encode(It.IsAny <long>(), EncodingType.PledgeApplicationId))
            .Returns((long value, EncodingType encodingType) => $"PA{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 TransferRequestForSenderViewModelMapper(_mockCommitmentsApiClient.Object, _mockApprovalsApiClient.Object, _mockEncodingService.Object);
        }
Example #3
0
 protected virtual T Map(GetTransferRequestResponse transferRequestResponse, GetPledgeApplicationResponse getPledgeApplicationResponse)
 {
     return(new T
     {
         HashedCohortReference = _encodingService.Encode(transferRequestResponse.CommitmentId, EncodingType.CohortReference),
         TrainingList = transferRequestResponse.TrainingList?.Select(MapTrainingCourse).ToList() ?? new List <TrainingCourseSummaryViewModel>(),
         TransferApprovalStatusDesc = transferRequestResponse.Status.ToString(),
         TransferApprovalStatus = transferRequestResponse.Status,
         TransferApprovalSetBy = transferRequestResponse.ApprovedOrRejectedByUserName,
         TransferApprovalSetOn = transferRequestResponse.ApprovedOrRejectedOn,
         TotalCost = transferRequestResponse.TransferCost,
         FundingCap = transferRequestResponse.FundingCap,
         ShowFundingCapWarning = (transferRequestResponse.Status == TransferApprovalStatus.Pending ||
                                  transferRequestResponse.Status == TransferApprovalStatus.Approved) &&
                                 transferRequestResponse.TransferCost < transferRequestResponse.FundingCap,
         AutoApprovalEnabled = transferRequestResponse.AutoApproval,
         HashedPledgeId = getPledgeApplicationResponse == null ? string.Empty : _encodingService.Encode(getPledgeApplicationResponse.PledgeId, EncodingType.PledgeId),
         HashedPledgeApplicationId = !transferRequestResponse.PledgeApplicationId.HasValue ? string.Empty : _encodingService.Encode(transferRequestResponse.PledgeApplicationId.Value, EncodingType.PledgeApplicationId)
     });
 }
Example #4
0
        public async Task When_PledgeApplication_Is_Null_Then_It_Is_Not_Mapped()
        {
            var autoFixture = new Fixture();

            _getTransferRequestResponse = autoFixture.Build <GetTransferRequestResponse>()
                                          .With(x => x.ReceivingEmployerAccountId, ReceivingEmployerAccountIdFirst)
                                          .With(x => x.TransferRequestId, TransferRequestIdFirst)
                                          .With(x => x.PledgeApplicationId, default(int?))
                                          .Create();

            _mockCommitmentsApiClient = new Mock <ICommitmentsApiClient>();
            _mockCommitmentsApiClient.Setup(r => r.GetTransferRequestForSender(It.IsAny <long>(), It.IsAny <long>(), CancellationToken.None))
            .ReturnsAsync(_getTransferRequestResponse);

            _mapper = new TransferRequestForSenderViewModelMapper(_mockCommitmentsApiClient.Object, _mockApprovalsApiClient.Object, _mockEncodingService.Object);

            var result = await _mapper.Map(_request);

            Assert.AreEqual(string.Empty, result.HashedPledgeApplicationId);
            Assert.AreEqual(string.Empty, result.HashedPledgeId);
        }