public async Task <ApplicationSectorsViewModel> GetSectorsViewModel(GetSectorsRequest request) { var application = await _applicationApiClient.GetApplication(request.ApplicationId); var clarificationPage = await _clarificationApiClient.GetClarificationPage( request.ApplicationId, SequenceIds.DeliveringApprenticeshipTraining, SectionIds.DeliveringApprenticeshipTraining.YourSectorsAndEmployees, RoatpWorkflowPageIds.YourSectorsAndEmployeesStartingPageId); if (application is null || clarificationPage is null) { return(null); } var selectedSectors = await _clarificationApiClient.GetClarificationSectors(request.ApplicationId, request.UserId); var viewModel = new ApplicationSectorsViewModel { ApplicationId = application.ApplicationId, Ukprn = application.ApplyData.ApplyDetails.UKPRN, ApplicantEmailAddress = null, ApplyLegalName = application.ApplyData.ApplyDetails.OrganisationName, ApplicationRoute = application.ApplyData.ApplyDetails.ProviderRouteName, SubmittedDate = application.ApplyData.ApplyDetails.ApplicationSubmittedOn, Caption = clarificationPage.Caption, Heading = SectionIds.DeliveringApprenticeshipTraining.YourSectorsAndEmployeesHeading, SelectedSectors = selectedSectors }; return(viewModel); }
public void Then_The_Url_Is_Correct() { //Act var actual = new GetSectorsRequest(); //Assert actual.GetUrl.Should().Be("sectors"); }
public async Task GetSectorsViewModel_returns_ViewModel() { int sequenceNumber = SequenceIds.DeliveringApprenticeshipTraining; int sectionNumber = SectionIds.DeliveringApprenticeshipTraining.YourSectorsAndEmployees; string pageId = RoatpWorkflowPageIds.YourSectorsAndEmployeesStartingPageId; var userId = _user.UserId(); _chosenSectors.Add(new AssessorSector { PageId = "1", Title = "page 1 title", Status = "Pass" }); _chosenSectors.Add(new AssessorSector { PageId = "2", Title = "page 2 title" }); _ukprn = "1234"; _organisationName = "org name"; _providerRouteName = "Main"; var application = new Apply { ApplicationId = _applicationId, ApplyData = new ApplyData { ApplyDetails = new ApplyDetails { UKPRN = _ukprn, OrganisationName = _organisationName, ProviderRouteName = _providerRouteName, ApplicationSubmittedOn = _applicationSubmittedOn } } }; var assessorPage = new AssessorPage { Caption = _assessorPageCaption }; _applicationApiClient.Setup(x => x.GetApplication(_applicationId)).ReturnsAsync(application); _assessorApiClient.Setup(x => x.GetAssessorPage(_applicationId, sequenceNumber, sectionNumber, pageId)) .ReturnsAsync(assessorPage); _assessorApiClient.Setup(x => x.GetAssessorSectors(_applicationId, userId)) .ReturnsAsync(_chosenSectors); var request = new GetSectorsRequest(_applicationId, userId); var actualViewModel = await _orchestrator.GetSectorsViewModel(request); Assert.That(actualViewModel, Is.Not.Null); var expectedViewModel = new ApplicationSectorsViewModel { ApplyLegalName = _organisationName, Ukprn = _ukprn, SelectedSectors = _chosenSectors, ApplicationId = _applicationId, ApplicationRoute = _providerRouteName, SubmittedDate = _applicationSubmittedOn, Caption = _assessorPageCaption, Heading = SectionIds.DeliveringApprenticeshipTraining.YourSectorsAndEmployeesHeading }; Assert.AreEqual(JsonConvert.SerializeObject(actualViewModel), JsonConvert.SerializeObject(expectedViewModel)); }
public async Task <List <AssessorSector> > GetSectors(Guid applicationId, [FromBody] GetSectorsRequest request) { var sectors = await _sectorService.GetSectorsForClarification(applicationId, request.UserId); return(sectors.OrderBy(sec => sec.PageId).ToList()); }