private DashboardOrchestrator GetSut(List <VacancySummary> vacancies) { var timeProviderMock = new Mock <ITimeProvider>(); timeProviderMock.Setup(t => t.Today).Returns(_today); var dashboardProjection = new ProviderDashboard { Vacancies = vacancies }; var vacancyClientMock = new Mock <IProviderVacancyClient>(); vacancyClientMock.Setup(c => c.GetDashboardAsync(Ukprn, true)) .ReturnsAsync(dashboardProjection); var userDetails = new User(); var clientMock = new Mock <IRecruitVacancyClient>(); clientMock.Setup(c => c.GetUsersDetailsAsync(UserId)) .ReturnsAsync(userDetails); var alertsViewModel = new AlertsViewModel(null, null); var alertsFactoryMock = new Mock <IProviderAlertsViewModelFactory>(); alertsFactoryMock.Setup(a => a.Create(dashboardProjection, userDetails)) .Returns(alertsViewModel); var orch = new DashboardOrchestrator(vacancyClientMock.Object, timeProviderMock.Object, clientMock.Object, alertsFactoryMock.Object); return(orch); }
public static DashboardViewModel MapFromProviderDashboard(ProviderDashboard dashboard) { return(new DashboardViewModel { Vacancies = dashboard?.Vacancies .OrderByDescending(v => v.CreatedDate) .ToList() ?? new List <VacancySummary>() }); }
private VacanciesSearchSuggestionsOrchestrator GetSut(IEnumerable <VacancySummary> vacancies) { var dashboard = new ProviderDashboard() { Vacancies = vacancies }; _mockClient.Setup(c => c.GetDashboardAsync(It.IsAny <long>(), false)).ReturnsAsync(dashboard); return(new VacanciesSearchSuggestionsOrchestrator(_mockClient.Object)); }
public Task UpdateProviderDashboardAsync(long ukprn, IEnumerable <VacancySummary> vacancySummaries) { var dashboardItem = new ProviderDashboard { Id = QueryViewType.ProviderDashboard.GetIdValue(ukprn), Vacancies = vacancySummaries, LastUpdated = _timeProvider.Now }; return(_queryStore.UpsertAsync(dashboardItem)); }
public async Task <ProviderDashboard> GetDashboardAsync(long ukprn, bool createIfNonExistent = false) { ProviderDashboard result = await _reader.GetProviderDashboardAsync(ukprn); if (result == null && createIfNonExistent) { await GenerateDashboard(ukprn); result = await _reader.GetProviderDashboardAsync(ukprn); } return(result); }
public AlertsViewModel Create(ProviderDashboard providerDashboard, User user) { if (user == null) { throw new ArgumentNullException(nameof(user)); } var transferredVacanciesAlert = _alertViewModelService.GetProviderTransferredVacanciesAlert( providerDashboard?.TransferredVacancies ?? Array.Empty <ProviderDashboardTransferredVacancy>(), user.TransferredVacanciesEmployerRevokedPermissionAlertDismissedOn); var withdrawnByQaVacanciesAlert = _alertViewModelService.GetWithdrawnByQaVacanciesAlert( providerDashboard?.Vacancies ?? Array.Empty <VacancySummary>(), user.ClosedVacanciesWithdrawnByQaAlertDismissedOn); return(new AlertsViewModel(transferredVacanciesAlert, withdrawnByQaVacanciesAlert)); }
private DashboardOrchestrator GetSut(List <VacancySummary> vacancies) { var timeProviderMock = new Mock <ITimeProvider>(); timeProviderMock.Setup(t => t.Today).Returns(_today); var dashboardProjection = new ProviderDashboard { Vacancies = vacancies }; var vacancyClientMock = new Mock <IProviderVacancyClient>(); vacancyClientMock.Setup(c => c.GetDashboardAsync(Ukprn, true)) .ReturnsAsync(dashboardProjection); var permissionServiceMock = new Mock <IProviderRelationshipsService>(); permissionServiceMock.Setup(p => p.GetLegalEntitiesForProviderAsync(Ukprn, OperationType.RecruitmentRequiresReview)) .ReturnsAsync(new List <EmployerInfo>()); var userDetails = new User(); var clientMock = new Mock <IRecruitVacancyClient>(); clientMock.Setup(c => c.GetUsersDetailsAsync(UserId)) .ReturnsAsync(userDetails); var alertsViewModel = new AlertsViewModel(null, null); var alertsFactoryMock = new Mock <IProviderAlertsViewModelFactory>(); alertsFactoryMock.Setup(a => a.Create(dashboardProjection, userDetails)) .Returns(alertsViewModel); var orch = new DashboardOrchestrator(vacancyClientMock.Object, timeProviderMock.Object, clientMock.Object, alertsFactoryMock.Object, permissionServiceMock.Object); return(orch); }