public void Check_organisation_risk_details_are_returned(string organisationType, string tradingName)
        {
            var applicationId = Guid.NewGuid();
            var pageId        = GatewayPageIds.OrganisationRisk;

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(applicationId, pageId, UserId, UserName)).ReturnsAsync(commonDetails);

            _organisationSummaryApiClient.Setup(x => x.GetTypeOfOrganisation(applicationId)).ReturnsAsync(organisationType);
            _organisationSummaryApiClient.Setup(x => x.GetCharityNumber(applicationId)).ReturnsAsync(CharityNumber);
            _organisationSummaryApiClient.Setup(x => x.GetCompanyNumber(applicationId)).ReturnsAsync(CompanyNumber);
            _applyApiClient.Setup(x => x.GetTradingName(applicationId)).ReturnsAsync(tradingName);

            var request = new GetOrganisationRiskRequest(applicationId, UserId, UserName);

            var response = _orchestrator.GetOrganisationRiskViewModel(request);

            var viewModel = response.Result;

            Assert.AreEqual(UKRLPLegalName, viewModel.ApplyLegalName);
            Assert.AreEqual(ukprn, viewModel.Ukprn);
            Assert.AreEqual(organisationType, viewModel.OrganisationType);
            Assert.AreEqual(tradingName, viewModel.TradingName);
            Assert.AreEqual(CompanyNumber, viewModel.CompanyNumber);
            Assert.AreEqual(CharityNumber, viewModel.CharityNumber);
        }
        public async Task GetRemoveApplicationViewModel_returns_viewModel(string ukprn, string organisationName, string providerRouteName, string applicationStatus, string gatewayReviewStatus)
        {
            var submittedDate = DateTime.Now.AddDays(-1);

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationId          = _applicationId,
                Ukprn                  = ukprn,
                ApplicationSubmittedOn = submittedDate,
                LegalName              = organisationName,
                ProviderRouteName      = providerRouteName,
                ApplicationStatus      = applicationStatus,
                GatewayReviewStatus    = gatewayReviewStatus
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(_applicationId, It.IsAny <string>(), UserId, UserName)).ReturnsAsync(commonDetails);

            var viewModel = await _orchestrator.GetRemoveApplicationViewModel(_applicationId, UserId, UserName);

            Assert.AreEqual(_applicationId, viewModel.ApplicationId);
            Assert.AreEqual(ukprn, viewModel.Ukprn);
            Assert.AreEqual(submittedDate, viewModel.ApplicationSubmittedOn);
            Assert.AreEqual(organisationName, viewModel.ApplyLegalName);
            Assert.AreEqual(providerRouteName, viewModel.ApplicationRoute);
            Assert.AreEqual(applicationStatus, viewModel.ApplicationStatus);
        }
        public void Setup()
        {
            ApplyApiClient = new Mock <IRoatpApplicationApiClient>();
            ExperienceAndAccreditationApiClient = new Mock <IRoatpExperienceAndAccreditationApiClient>();
            Logger       = new Mock <ILogger <GatewayExperienceAndAccreditationOrchestrator> >();
            Orchestrator = new GatewayExperienceAndAccreditationOrchestrator(ApplyApiClient.Object, ExperienceAndAccreditationApiClient.Object, Logger.Object);

            ApplicationId = Guid.NewGuid();

            CommonDetails = new GatewayCommonDetails
            {
                ApplicationId          = ApplicationId,
                PageId                 = GatewayPageId,
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now.AddHours(-2),
                LegalName              = UKRLPLegalName,
                Ukprn = Ukprn,
                GatewayReviewStatus = "RevStatus",
                Status        = "Pass",
                Comments      = "No comment",
                OutcomeMadeBy = UserName,
                OutcomeMadeOn = DateTime.Now
            };
            ApplyApiClient.Setup(x => x.GetPageCommonDetails(ApplicationId, GatewayPageId, UserId, UserName)).ReturnsAsync(CommonDetails);
        }
Beispiel #4
0
        public void check_organisation_status_orchestrator_builds_with_company_details_only()
        {
            var applicationId = Guid.NewGuid();

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(applicationId, It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(commonDetails);

            var ukrlpDetails = new ProviderDetails
            {
                ProviderName                = ProviderName,
                ProviderStatus              = ProviderStatus,
                VerifiedByCompaniesHouse    = true,
                VerifiedbyCharityCommission = false
            };

            _applyApiClient.Setup(x => x.GetUkrlpDetails(applicationId)).ReturnsAsync(ukrlpDetails);

            var companiesHouseDetails = new CompaniesHouseSummary
            {
                Status = CompanyStatus
            };

            _applyApiClient.Setup(x => x.GetCompaniesHouseDetails(applicationId)).ReturnsAsync(companiesHouseDetails);

            var charityDetails = new CharityCommissionSummary
            {
                Status = null
            };

            _applyApiClient.Setup(x => x.GetCharityCommissionDetails(applicationId)).ReturnsAsync(charityDetails);

            var request = new GetOrganisationStatusRequest(applicationId, UserId, UserName);

            var response = _orchestrator.GetOrganisationStatusViewModel(request);

            var viewModel = response.Result;

            Assert.AreEqual(ProviderStatusWithCapitalisation, viewModel.UkrlpStatus);
            Assert.AreEqual(CompanyStatusWithCapitalisation, viewModel.CompaniesHouseStatus);
            Assert.IsNull(viewModel.CharityCommissionStatus);
            Assert.AreEqual(ukprn, viewModel.Ukprn);

            _applyApiClient.Verify(x => x.GetUkrlpDetails(applicationId), Times.Once);
            _applyApiClient.Verify(x => x.GetCompaniesHouseDetails(applicationId), Times.Once);
            _applyApiClient.Verify(x => x.GetCharityCommissionDetails(applicationId), Times.Never);
        }
        public void check_legal_name_orchestrator_builds_with_company_and_charity_details()
        {
            var applicationId = Guid.NewGuid();

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(applicationId, It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(commonDetails);

            var ukrlpDetails = new ProviderDetails
            {
                ProviderName = ProviderName,
                VerifiedbyCharityCommission = true,
                VerifiedByCompaniesHouse    = true
            };

            _applyApiClient.Setup(x => x.GetUkrlpDetails(applicationId)).ReturnsAsync(ukrlpDetails);

            var companiesHouseDetails = new CompaniesHouseSummary
            {
                CompanyName = CompanyName
            };

            _applyApiClient.Setup(x => x.GetCompaniesHouseDetails(applicationId)).ReturnsAsync(companiesHouseDetails);

            var charityDetails = new CharityCommissionSummary
            {
                CharityName = CharityName
            };

            _applyApiClient.Setup(x => x.GetCharityCommissionDetails(applicationId)).ReturnsAsync(charityDetails);

            var request = new GetLegalNameRequest(applicationId, UserId, UserName);

            var response = _orchestrator.GetLegalNameViewModel(request);

            var viewModel = response.Result;

            Assert.AreEqual(UKRLPLegalName, viewModel.ApplyLegalName);
            Assert.AreEqual(ProviderName, viewModel.UkrlpLegalName);
            Assert.AreEqual(CompanyName, viewModel.CompaniesHouseLegalName);
            Assert.AreEqual(CharityName, viewModel.CharityCommissionLegalName);
            Assert.AreEqual(ukprn, viewModel.Ukprn);
            _applyApiClient.Verify(x => x.GetUkrlpDetails(applicationId), Times.Once);
            _applyApiClient.Verify(x => x.GetCompaniesHouseDetails(applicationId), Times.Once);
            _applyApiClient.Verify(x => x.GetCharityCommissionDetails(applicationId), Times.Once);
        }
Beispiel #6
0
        public void check_orchestrator_builds_with_ico_number()
        {
            var applicationId = Guid.NewGuid();

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(It.IsAny <Guid>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(commonDetails);

            // SubmittedApplicationAddress
            var expectedOrganisationAddress = "1 QnA Street, Second Address, Third Address, Forth Address, Coventry, CV2 1WT";

            var organisationAddressResult = new ContactAddress
            {
                Address1 = "1 QnA Street",
                Address2 = "Second Address",
                Address3 = "Third Address",
                Address4 = "Forth Address",
                Town     = "Coventry",
                PostCode = "CV2 1WT"
            };

            _applyApiClient.Setup(x => x.GetOrganisationAddress(It.IsAny <Guid>())).ReturnsAsync(organisationAddressResult);


            // SubmittedApplicationIcoNumber
            var expectedIcoNumberIcoNumber = "1234QWER";
            var icoNumberResult            = new IcoNumber {
                Value = "1234QWER"
            };


            _applyApiClient.Setup(x => x.GetIcoNumber(It.IsAny <Guid>())).ReturnsAsync(icoNumberResult);



            var request = new GetIcoNumberRequest(applicationId, UserId, UserName);

            var response = _orchestrator.GetIcoNumberViewModel(request);

            var viewModel = response.Result;

            Assert.AreEqual(UKRLPLegalName, viewModel.ApplyLegalName);
            Assert.AreEqual(ukprn, viewModel.Ukprn);
            Assert.AreEqual(expectedOrganisationAddress, viewModel.OrganisationAddress);
            Assert.AreEqual(expectedIcoNumberIcoNumber, viewModel.IcoNumber);
        }
Beispiel #7
0
        public void Setup()
        {
            _applyApiClient = new Mock <IRoatpApplicationApiClient>();
            _roatpApiClient = new Mock <IRoatpRegisterApiClient>();
            _logger         = new Mock <ILogger <GatewayRegisterChecksOrchestrator> >();
            _orchestrator   = new GatewayRegisterChecksOrchestrator(_applyApiClient.Object, _roatpApiClient.Object, _logger.Object);

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(_applicationId, It.IsAny <string>(), UserId, UserName)).ReturnsAsync(commonDetails);
        }
Beispiel #8
0
        public void check_orchestrator_builds_with_website_address(string organisationWebsite, string ukrlpApiWebsite)
        {
            var applicationId = Guid.NewGuid();

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(It.IsAny <Guid>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(commonDetails);

            _applyApiClient.Setup(x => x.GetOrganisationWebsiteAddress(applicationId)).ReturnsAsync(organisationWebsite);

            var ukrlpDetails = new ProviderDetails
            {
                ContactDetails = new List <ProviderContact>()
                {
                    new ProviderContact
                    {
                        ContactWebsiteAddress = ukrlpApiWebsite,
                        ContactType           = RoatpGatewayConstants.ProviderContactDetailsTypeLegalIdentifier
                    }
                }
            };

            _applyApiClient.Setup(x => x.GetUkrlpDetails(applicationId)).ReturnsAsync(ukrlpDetails);

            var request = new GetWebsiteRequest(applicationId, UserId, UserName);

            var response = _orchestrator.GetWebsiteViewModel(request);

            var viewModel = response.Result;

            Assert.AreEqual(UKRLPLegalName, viewModel.ApplyLegalName);
            Assert.AreEqual(ukprn, viewModel.Ukprn);
            Assert.AreEqual(organisationWebsite, viewModel.SubmittedWebsite);
            Assert.AreEqual(ukrlpApiWebsite, viewModel.UkrlpWebsite);
        }
Beispiel #9
0
        public void Setup()
        {
            _applyApiClient = new Mock <IRoatpApplicationApiClient>();
            _organisationSummaryApiClient = new Mock <IRoatpOrganisationSummaryApiClient>();
            _logger       = new Mock <ILogger <PeopleInControlOrchestrator> >();
            _orchestrator = new PeopleInControlOrchestrator(_applyApiClient.Object, _organisationSummaryApiClient.Object, _logger.Object);

            _commonDetails = new GatewayCommonDetails
            {
                ApplicationId          = _applicationId,
                PageId                 = GatewayPageId,
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName              = UKRLPLegalName,
                Ukprn = ukprn,
                GatewayReviewStatus = "RevStatus",
                Comments            = "Fail",
                Status = "Fail"
            };
            _applyApiClient.Setup(x => x.GetPageCommonDetails(_applicationId, GatewayPageId, UserId, UserName)).ReturnsAsync(_commonDetails);
        }
        public void Setup()
        {
            _applyApiClient = new Mock <IRoatpApplicationApiClient>();
            _roatpApiClient = new Mock <IRoatpRegisterApiClient>();
            _logger         = new Mock <ILogger <GatewayRegisterChecksOrchestrator> >();
            _orchestrator   = new GatewayRegisterChecksOrchestrator(_applyApiClient.Object, _roatpApiClient.Object, _logger.Object);

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationId          = _applicationId,
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(_applicationId, It.IsAny <string>(), UserId, UserName)).ReturnsAsync(commonDetails);

            _applyApiClient.Setup(x => x.GetProviderRouteName(_applicationId)).ReturnsAsync($"{roatpProviderTypeId}");

            var providerType = new ProviderType
            {
                Id   = roatpProviderTypeId,
                Type = $"{roatpProviderTypeId}"
            };

            _roatpApiClient.Setup(x => x.GetProviderTypes()).ReturnsAsync(new List <ProviderType> {
                providerType
            });

            var organisationStatus = new OrganisationStatus
            {
                Id     = roatpStatusId,
                Status = $"{roatpStatusId}"
            };

            _roatpApiClient.Setup(x => x.GetOrganisationStatuses(It.IsAny <int?>())).ReturnsAsync(new List <OrganisationStatus> {
                organisationStatus
            });
        }
        public void Before_each_test()
        {
            _applyApiClient          = new Mock <IRoatpApplicationApiClient>();
            _criminalChecksApiClient = new Mock <IRoatpGatewayCriminalComplianceChecksApiClient>();
            _logger = new Mock <ILogger <GatewayCriminalComplianceChecksOrchestrator> >();

            _orchestrator = new GatewayCriminalComplianceChecksOrchestrator(_applyApiClient.Object, _criminalChecksApiClient.Object, _logger.Object);

            _commonDetails = new GatewayCommonDetails
            {
                GatewayReviewStatus = GatewayReviewStatus.InProgress,
                LegalName           = "Legal Eagle",
                Status                 = "Pass",
                Comments               = "No comment",
                Ukprn                  = "10001234",
                SourcesCheckedOn       = DateTime.Now.AddHours(-2),
                ApplicationSubmittedOn = DateTime.Now.AddMonths(-1),
                OutcomeMadeBy          = "Test",
                OutcomeMadeOn          = DateTime.Now
            };
            _applyApiClient.Setup(x => x.GetPageCommonDetails(It.IsAny <Guid>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(_commonDetails);
        }
        public void check_trading_name_orchestrator_builds_with_expected_details()
        {
            var applicationId = Guid.NewGuid();

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = LegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(It.IsAny <Guid>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(commonDetails);

            var ukrlpDetails = new ProviderDetails
            {
                ProviderAliases = new List <ProviderAlias>()
                {
                    new ProviderAlias {
                        Alias = UKRLPTradingName
                    }
                }
            };

            _applyApiClient.Setup(x => x.GetUkrlpDetails(It.IsAny <Guid>())).ReturnsAsync(ukrlpDetails);
            _applyApiClient.Setup(x => x.GetTradingName(It.IsAny <Guid>())).ReturnsAsync(ApplyTradingName);

            var request = new GetTradingNameRequest(applicationId, UserId, UserName);

            var response = _orchestrator.GetTradingNameViewModel(request);

            var viewModel = response.Result;

            Assert.AreEqual(UKRLPTradingName, viewModel.UkrlpTradingName);
            Assert.AreEqual(ApplyTradingName, viewModel.ApplyTradingName);
            Assert.AreEqual(ukprn, viewModel.Ukprn);
        }
        public void check_orchestrator_builds_with_both_addresses_details()
        {
            var applicationId = Guid.NewGuid();

            var commonDetails = new GatewayCommonDetails
            {
                ApplicationSubmittedOn = DateTime.Now.AddDays(-3),
                SourcesCheckedOn       = DateTime.Now,
                LegalName = UKRLPLegalName,
                Ukprn     = ukprn
            };

            _applyApiClient.Setup(x => x.GetPageCommonDetails(It.IsAny <Guid>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(commonDetails);

            // SubmittedApplicationAddress
            var SubmittedApplicationAddress = "1 QnA Street, Second Address, Third Address, Forth Address, Coventry, CV2 1WT";

            var organisationAddressResult = new ContactAddress
            {
                Address1 = "1 QnA Street",
                Address2 = "Second Address",
                Address3 = "Third Address",
                Address4 = "Forth Address",
                Town     = "Coventry",
                PostCode = "CV2 1WT"
            };

            _applyApiClient.Setup(x => x.GetOrganisationAddress(It.IsAny <Guid>())).ReturnsAsync(organisationAddressResult);

            // UkrlpAddress
            var UkrlpAddress = "1 First Street, Second Address, Third Address, Forth Address, Coventry, CV1 2WT";

            var ukrlpDetails = new ProviderDetails
            {
                ContactDetails = new List <ProviderContact>
                {
                    new  ProviderContact {
                        ContactAddress = new ContactAddress {
                            Address1 = "1 First Street",
                            Address2 = "Second Address",
                            Address3 = "Third Address",
                            Address4 = "Forth Address",
                            Town     = "Coventry",
                            PostCode = "CV1 2WT"
                        }
                    }
                }
            };

            _applyApiClient.Setup(x => x.GetUkrlpDetails(It.IsAny <Guid>())).ReturnsAsync(ukrlpDetails);

            var request = new GetAddressRequest(applicationId, UserId, UserName);

            var response = _orchestrator.GetAddressViewModel(request);

            var viewModel = response.Result;

            Assert.AreEqual(UKRLPLegalName, viewModel.ApplyLegalName);
            Assert.AreEqual(ukprn, viewModel.Ukprn);
            Assert.AreEqual(SubmittedApplicationAddress, viewModel.SubmittedApplicationAddress);
            Assert.AreEqual(UkrlpAddress, viewModel.UkrlpAddress);
        }