public async Task <IActionResult> TransferDetailsForReceiver(TransferRequestRequest request) { _logger.LogInformation($"Getting TransferRequest Details, Transfer Account: {request.AccountId}, TransferRequestId: {request.TransferRequestId}"); var viewModel = await _modelMapper.Map <TransferRequestForReceiverViewModel>(request); return(View(viewModel)); }
public async Task <TransferRequestForSenderViewModel> Map(TransferRequestRequest source) { var transferRequestResponse = await _commitmentsApiClient.GetTransferRequestForSender(source.AccountId, source.TransferRequestId); GetPledgeApplicationResponse pledgeApplicationResponse = null; if (transferRequestResponse.PledgeApplicationId.HasValue) { pledgeApplicationResponse = await _approvalsApiClient.GetPledgeApplication(transferRequestResponse.PledgeApplicationId.Value); } var viewModel = Map(transferRequestResponse, pledgeApplicationResponse); return(viewModel); }
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); }
public async Task Then_Returns_View_With_Correct_Model( TransferRequestRequest request, TransferRequestForReceiverViewModel viewModel, [Frozen] Mock <IModelMapper> mockMapper, [Greedy] TransferRequestController controller) { mockMapper .Setup(mapper => mapper.Map <TransferRequestForReceiverViewModel>(request)) .ReturnsAsync(viewModel); var result = await controller.TransferDetailsForReceiver(request) as ViewResult; result.ViewName.Should().BeNull(); var model = result.Model as TransferRequestForReceiverViewModel; model.Should().BeSameAs(viewModel); }