public async Task And_Application_Exists_Stitches_Up_Standard_To_Result(
            GetApplicationQuery getApplicationQuery,
            GetApplicationResponse getApplicationResponse,
            GetStandardsListItem getStandardsListItem,
            GetCohortsResponse getCohortsResponse,
            [Frozen] Mock <ICoursesApiClient <CoursesApiConfiguration> > mockCoursesApiClient,
            [Frozen] Mock <ILevyTransferMatchingService> mockLevyTransferMatchingService,
            [Frozen] Mock <ICommitmentsV2ApiClient <CommitmentsV2ApiConfiguration> > mockCommitmentsV2ApiClient,
            GetApplicationQueryHandler getApplicationQueryHandler)
        {
            mockLevyTransferMatchingService
            .Setup(x => x.GetApplication(It.Is <GetApplicationRequest>(y => y.GetUrl.Contains(getApplicationQuery.ApplicationId.ToString()))))
            .ReturnsAsync(getApplicationResponse);

            mockCoursesApiClient
            .Setup(x => x.Get <GetStandardsListItem>(It.Is <GetStandardDetailsByIdRequest>(y => y.GetUrl.Contains(getApplicationResponse.StandardId))))
            .ReturnsAsync(getStandardsListItem);

            mockCommitmentsV2ApiClient
            .Setup(x => x.Get <GetCohortsResponse>(It.Is <GetCohortsRequest>(y => y.GetUrl.Contains(getApplicationQuery.AccountId.ToString()))))
            .ReturnsAsync(getCohortsResponse);

            var result = await getApplicationQueryHandler.Handle(getApplicationQuery, CancellationToken.None);

            Assert.IsNotNull(result);
            Assert.AreEqual(getApplicationResponse.Status, result.Status);
        }
Exemple #2
0
        public void Arrange()
        {
            _fixture = new Fixture();
            _applicationRepository = new Mock <IQueryRepository <IncentiveApplicationDto> >();

            _sut = new GetApplicationQueryHandler(_applicationRepository.Object);
        }
        public async Task And_Application_Doesnt_Exist_Returns_Null(
            GetApplicationQuery getApplicationQuery,
            [Frozen] Mock <ILevyTransferMatchingService> mockLevyTransferMatchingService,
            GetApplicationQueryHandler getApplicationQueryHandler)
        {
            mockLevyTransferMatchingService
            .Setup(x => x.GetApplication(It.Is <GetApplicationRequest>(y => y.GetUrl.Contains(getApplicationQuery.ApplicationId.ToString()))))
            .ReturnsAsync((GetApplicationResponse)null);

            var result = await getApplicationQueryHandler.Handle(getApplicationQuery, CancellationToken.None);

            Assert.IsNull(result);
        }
        public async Task And_Application_Exists_And_No_Specific_Locations_Returned_Stitches_Up_Standard_And_Location_To_Result(
            GetApplicationQuery getApplicationQuery,
            GetApplicationResponse getApplicationResponse,
            [Frozen] Mock <ILevyTransferMatchingService> mockLevyTransferMatchingService,
            GetApplicationQueryHandler getApplicationQueryHandler)
        {
            mockLevyTransferMatchingService
            .Setup(x => x.GetApplication(It.Is <GetApplicationRequest>(y => y.GetUrl.Contains(getApplicationQuery.PledgeId.ToString()) && y.GetUrl.Contains(getApplicationQuery.ApplicationId.ToString()))))
            .ReturnsAsync(getApplicationResponse);

            var result = await getApplicationQueryHandler.Handle(getApplicationQuery, CancellationToken.None);

            Assert.IsNotNull(result);
            Assert.AreEqual(getApplicationResponse.Details, result.AboutOpportunity);
        }
        public void Arrange()
        {
            _fixture = new Fixture();
            _applicationRepository = new Mock <IQueryRepository <IncentiveApplicationDto> >();
            _legalEntityRepository = new Mock <IQueryRepository <LegalEntityDto> >();
            _paymentProfileService = new Mock <IIncentivePaymentProfilesService>();

            _paymentProfileService.Setup(x => x.Get()).ReturnsAsync(new List <IncentivePaymentProfile>
            {
                new IncentivePaymentProfile(IncentiveType.TwentyFiveOrOverIncentive,
                                            new List <PaymentProfile>
                {
                    new PaymentProfile(90, 1000), new PaymentProfile(365, 1000)
                }),

                new IncentivePaymentProfile(IncentiveType.UnderTwentyFiveIncentive,
                                            new List <PaymentProfile>
                {
                    new PaymentProfile(90, 1200), new PaymentProfile(365, 1200)
                })
            });

            _sut = new GetApplicationQueryHandler(_applicationRepository.Object, _legalEntityRepository.Object, _paymentProfileService.Object);
        }