public void SimpleSaveAndUpdateTest() { IVacancyWriteRepository writeRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); const string title = "Vacancy title"; var vacancyGuid = Guid.NewGuid(); var fixture = new Fixture(); fixture.Customizations.Add( new StringGenerator(() => Guid.NewGuid().ToString().Substring(0, 10))); var vacancy = CreateValidDomainVacancy(); vacancy.VacancyGuid = vacancyGuid; vacancy.Title = title; vacancy.Status = VacancyStatus.Draft; // Changed from PendingQA to Draft because PendingQA is not still in the db vacancy.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy.Address.Postcode = "CV1 2WT"; vacancy.Address.County = "West Midlands"; vacancy.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy.FrameworkCodeName = null; vacancy.SectorCodeName = "ALB"; vacancy.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; var entity = writeRepository.Create(vacancy); vacancy.VacancyId = entity.VacancyId; vacancy.TrainingProvided = null; writeRepository.Update(vacancy); }
public void WhenCreating_ItShouldAddTheEntity() { var repository = new VacancyRepository(new InMemoryRepositoryStore <Vacancy>()); var vacancyId = Guid.NewGuid(); repository.Create(vacancyId, "user"); }
public void GetMultiLocationTest() { IVacancyWriteRepository writeRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); IVacancyReadRepository readRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); IVacancyLocationWriteRepository locationWriteRepository = new VacancyLocationRepository(_connection, _mapper, _logger.Object); IVacancyLocationReadRepository locationReadRepository = new VacancyLocationRepository(_connection, _mapper, _logger.Object); var vacancy = CreateValidDomainVacancy(); vacancy.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy.Address.Postcode = null; vacancy.Address.County = null; vacancy.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy.IsEmployerLocationMainApprenticeshipLocation = false; vacancy.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; vacancy = writeRepository.Create(vacancy); var vacancyLocations = new List <VacancyLocation> { new VacancyLocation { VacancyId = vacancy.VacancyId, Address = new PostalAddress { Postcode = "SW2 4NT", County = "West Midlands" } }, new VacancyLocation { VacancyId = vacancy.VacancyId, Address = new PostalAddress { Postcode = "B26 2LW", County = "West Midlands" } } }; locationWriteRepository.Create(vacancyLocations); var retrievedLocations = locationReadRepository.GetForVacancyId(vacancy.VacancyId); retrievedLocations.Should().HaveCount(vacancyLocations.Count); retrievedLocations.Exists(x => x.Address.Postcode == "SW2 4NT").Should().BeTrue(); retrievedLocations.Exists(x => x.Address.Postcode == "B26 2LW").Should().BeTrue(); }
public ResumeAdderForm(DataService service, Applicant applicant) { this.service = service; this.applicant = applicant; this.appRepos = new ApplicantRepository(this.service); this.empRepos = new EmployerRepository(this.service); this.vacRepos = new VacancyRepository(this.service); this.resRepos = new ResumeRepository(this.service); this.reqRepos = new RequestRepository(this.service); InitializeComponent(); }
public VacancyEditorForm(DataService service, Employer employer, Vacancy vacancy) { this.service = service; this.employer = employer; this.vacancy = vacancy; this.appRepos = new ApplicantRepository(this.service); this.empRepos = new EmployerRepository(this.service); this.vacRepos = new VacancyRepository(this.service); this.resRepos = new ResumeRepository(this.service); this.reqRepos = new RequestRepository(this.service); InitializeComponent(); }
public EmployerMainForm(DataService service, Employer employer) { this.service = service; this.employer = employer; this.appRepos = new ApplicantRepository(this.service); this.empRepos = new EmployerRepository(this.service); this.vacRepos = new VacancyRepository(this.service); this.resRepos = new ResumeRepository(this.service); this.reqRepos = new RequestRepository(this.service); this.vacancies = vacRepos.VacanciesByLogin(this.employer.Login); this.resumes = resRepos.ShownResumes(); this.requests = reqRepos.RequestsByEmployer(vacRepos, this.employer.Login); InitializeComponent(); }
public ApplicantMainForm(DataService service, Applicant applicant) { this.service = service; this.applicant = applicant; this.appRepos = new ApplicantRepository(this.service); this.empRepos = new EmployerRepository(this.service); this.vacRepos = new VacancyRepository(this.service); this.resRepos = new ResumeRepository(this.service); this.reqRepos = new RequestRepository(this.service); this.resumes = resRepos.ResumesByLogin(this.applicant.Login); this.vacancies = vacRepos.ShownVacancies(); this.requests = reqRepos.RequestByApplicant(this.resRepos, this.applicant.Login); InitializeComponent(); }
public static ContentService CreateContentService() { IUnitOfWork uow = new EFUnitOfWork(); IArticleRepository articleRepository = new ArticleRepository(uow); ISiteNodeRepository siteNodeRepository = new SiteNodeRepository(uow); INewsRepository newsRepository = new NewsRepository(uow); ICompanyRepository companyRepository = new CompanyRepository(uow); IIdeaRepository ideaRepository = new IdeaRepository(uow); ICommentRepository commentRepository = new CommentRepository(uow); IVacancyRepository vacancyRepository = new VacancyRepository(uow); IAnnouncementRepository announcementRepository = new AnnouncementRepository(uow); return(new ContentService(articleRepository, siteNodeRepository, newsRepository, companyRepository, ideaRepository, commentRepository, vacancyRepository, announcementRepository, uow, HttpContext.Current)); }
public void CreatedDateTimeTest() { var now = new DateTime(2016, 3, 16); _dateTimeService.Setup(ds => ds.UtcNow).Returns(now); IVacancyReadRepository readRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); IVacancyWriteRepository writeRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); const string title = "Vacancy title"; var vacancyGuid = Guid.NewGuid(); var fixture = new Fixture(); fixture.Customizations.Add( new StringGenerator(() => Guid.NewGuid().ToString().Substring(0, 10))); var vacancy = CreateValidDomainVacancy(); vacancy.VacancyGuid = vacancyGuid; vacancy.Title = title; vacancy.Status = VacancyStatus.Draft; // Changed from PendingQA to Draft because PendingQA is not still in the db vacancy.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy.Address.Postcode = "CV1 2WT"; vacancy.Address.County = "West Midlands"; vacancy.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy.FrameworkCodeName = null; vacancy.SectorCodeName = "ALB"; vacancy.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; vacancy = writeRepository.Create(vacancy); vacancy.Status = VacancyStatus.Submitted; vacancy = writeRepository.Update(vacancy); vacancy.Status = VacancyStatus.Referred; vacancy = writeRepository.Update(vacancy); vacancy.Status = VacancyStatus.Submitted; vacancy = writeRepository.Update(vacancy); vacancy.Status = VacancyStatus.Live; vacancy = writeRepository.Update(vacancy); var entity = readRepository.GetByReferenceNumber(vacancy.VacancyReferenceNumber); entity.CreatedDateTime.Should().Be(now); }
public VacancyApplicationsMigrationProcessor(IVacancyApplicationsUpdater vacancyApplicationsUpdater, IApplicationMappers applicationMappers, IGenericSyncRespository genericSyncRespository, IGetOpenConnection sourceDatabase, IGetOpenConnection targetDatabase, IConfigurationService configurationService, ILogService logService) { _vacancyApplicationsUpdater = vacancyApplicationsUpdater; _applicationMappers = applicationMappers; _genericSyncRespository = genericSyncRespository; _targetDatabase = targetDatabase; _logService = logService; _vacancyRepository = new VacancyRepository(targetDatabase); _candidateRepository = new CandidateRepository(targetDatabase); _sourceApplicationRepository = new ApplicationRepository(sourceDatabase); _sourceApplicationHistoryRepository = new ApplicationHistoryRepository(sourceDatabase, _logService); _sourceSubVacancyRepository = new SubVacancyRepository(sourceDatabase); _destinationApplicationRepository = new ApplicationRepository(targetDatabase); _destinationApplicationHistoryRepository = new ApplicationHistoryRepository(targetDatabase, _logService); _schoolAttendedRepository = new SchoolAttendedRepository(targetDatabase); _destinationSubVacancyRepository = new SubVacancyRepository(targetDatabase); _vacancyApplicationsRepository = new VacancyApplicationsRepository(_vacancyApplicationsUpdater.CollectionName, configurationService, logService); _updateVacancyApplicationsRepository = new UpdateVacancyApplicationsRepository(_vacancyApplicationsUpdater.CollectionName, configurationService, logService); }
public CandidateMigrationProcessor(ICandidateMappers candidateMappers, SyncRepository syncRepository, IGenericSyncRespository genericSyncRespository, IGetOpenConnection targetDatabase, IConfigurationService configurationService, ILogService logService) { _candidateMappers = candidateMappers; _syncRepository = syncRepository; _genericSyncRespository = genericSyncRespository; _targetDatabase = targetDatabase; _logService = logService; _vacancyRepository = new VacancyRepository(targetDatabase); _localAuthorityRepository = new LocalAuthorityRepository(targetDatabase); _candidateRepository = new CandidateRepository(targetDatabase); _schoolAttendedRepository = new SchoolAttendedRepository(targetDatabase); _candidateHistoryRepository = new CandidateHistoryRepository(targetDatabase); _candidateUserRepository = new CandidateUserRepository(configurationService, _logService); _userRepository = new UserRepository(configurationService, logService); var configuration = configurationService.Get <MigrateFromFaaToAvmsPlusConfiguration>(); _anonymiseData = configuration.AnonymiseData; }
public void IncrementNumberOfClickThroughs() { IVacancyWriteRepository writeRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); IVacancyReadRepository readRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); var vacancy = CreateValidDomainVacancy(); vacancy.VacancyGuid = Guid.NewGuid(); vacancy.Title = "Test"; vacancy.Status = VacancyStatus.Draft; // Changed from PendingQA to Draft because PendingQA is not still in the db vacancy.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy.Address.Postcode = "CV1 2WT"; vacancy.Address.County = "West Midlands"; vacancy.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy.FrameworkCodeName = null; vacancy.SectorCodeName = "ALB"; vacancy.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; vacancy.Duration = 2; vacancy.DurationType = DurationType.Years; vacancy.ExpectedDuration = "2 years"; vacancy.NoOfOfflineApplicants = 0; vacancy = writeRepository.Create(vacancy); writeRepository.IncrementOfflineApplicationClickThrough(vacancy.VacancyId); writeRepository.IncrementOfflineApplicationClickThrough(vacancy.VacancyId); writeRepository.IncrementOfflineApplicationClickThrough(vacancy.VacancyId); writeRepository.IncrementOfflineApplicationClickThrough(vacancy.VacancyId); writeRepository.IncrementOfflineApplicationClickThrough(vacancy.VacancyId); var entity = readRepository.Get(vacancy.VacancyId); entity.NoOfOfflineApplicants.Should().Be(5); }
public void GetByIdsTest() { IVacancyWriteRepository writeRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); IVacancyReadRepository readRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); var summaryRepository = new VacancySummaryRepository(_connection); var vacancy1 = CreateValidDomainVacancy(); vacancy1.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy1.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy1.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; var vacancy2 = CreateValidDomainVacancy(); vacancy2.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy2.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy2.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; var vacancy3 = CreateValidDomainVacancy(); vacancy3.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy3.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy3.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; vacancy1 = writeRepository.Create(vacancy1); vacancy2 = writeRepository.Create(vacancy2); vacancy3 = writeRepository.Create(vacancy3); var vacancies = summaryRepository.GetByIds(new[] { vacancy1.VacancyId, vacancy2.VacancyId, vacancy3.VacancyId }); vacancies.Count.Should().Be(3); foreach (var vacancySummary in vacancies) { vacancySummary.VacancyId.Should().NotBe(0); } }
public void SimpleGetTest() { IVacancyReadRepository readRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); IVacancyWriteRepository writeRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); const string title = "Vacancy title"; var vacancyGuid = Guid.NewGuid(); var fixture = new Fixture(); fixture.Customizations.Add( new StringGenerator(() => Guid.NewGuid().ToString().Substring(0, 10))); var vacancy = CreateValidDomainVacancy(); vacancy.VacancyGuid = vacancyGuid; vacancy.Title = title; vacancy.Status = VacancyStatus.Draft; // Changed from PendingQA to Draft because PendingQA is not still in the db vacancy.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy.Address.Postcode = "CV1 2WT"; vacancy.Address.County = "West Midlands"; vacancy.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy.FrameworkCodeName = null; vacancy.SectorCodeName = "ALB"; vacancy.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; vacancy.Duration = 2; vacancy.DurationType = DurationType.Years; vacancy.ExpectedDuration = "2 years"; writeRepository.Create(vacancy); var entity = readRepository.GetByReferenceNumber(vacancy.VacancyReferenceNumber); entity.AdditionalLocationInformationComment = "AdditionalLocationInformationComment"; writeRepository.Update(entity); entity = readRepository.GetByReferenceNumber(vacancy.VacancyReferenceNumber); entity.ShouldBeEquivalentTo(vacancy, options => ForShallowSave(options) .Excluding(x => x.SelectedMemberPath.EndsWith("Comment")) .Excluding(x => x.VacancyId) .Excluding(x => x.SectorCodeName) // what is this? .Excluding(x => x.Address.PostalAddressId) .Excluding(x => x.Address.ValidationSourceCode) .Excluding(x => x.Address.ValidationSourceKeyValue) .Excluding(x => x.Address.DateValidated) .Excluding(x => x.Address.County) // do a DB lookup .Excluding(x => x.LastEditedById) // Get from VacancyHistory table (not yet implemented) .Excluding(x => x.ClosingDate) .Excluding(x => x.PossibleStartDate) .Excluding(x => x.DateFirstSubmitted) .Excluding(x => x.UpdatedDateTime) .Excluding(x => x.CreatedDateTime) .Excluding(x => x.CreatedByProviderUsername) .Excluding(x => x.VacancyLocationType) .Excluding(x => x.OtherInformation) .Excluding(x => x.LiveClosingDate) .Excluding(x => x.SyntheticUpdatedDateTime) .Excluding(x => x.EmployerName)); entity.AdditionalLocationInformationComment.Should().Be("AdditionalLocationInformationComment"); }
public VacancyController(UserRepository userRepository, IFileProvider[] fileProviders, VacancyRepository vacancyRepository) : base(userRepository, fileProviders) { this.vacancyRepository = vacancyRepository; }
public void FindTest() { IVacancyWriteRepository writeRepository = new VacancyRepository(_connection, _mapper, _dateTimeService.Object, _logger.Object, _currentUserService.Object, _configurationService.Object); IVacancySummaryRepository summaryRepository = new VacancySummaryRepository(_connection); const string title = "Vacancy title"; var vacancyGuid = Guid.NewGuid(); var fixture = new Fixture(); fixture.Customizations.Add( new StringGenerator(() => Guid.NewGuid().ToString().Substring(0, 10))); var vacancy = CreateValidDomainVacancy(); vacancy.VacancyGuid = vacancyGuid; vacancy.Title = title; vacancy.Status = VacancyStatus.Live; vacancy.VacancyManagerId = SeedData.ProviderSites.HopwoodCampus.ProviderSiteId; vacancy.VacancyOwnerRelationshipId = SeedData.VacancyOwnerRelationships.TestOne.VacancyOwnerRelationshipId; vacancy.UpdatedDateTime = null; vacancy.CreatedDateTime = DateTime.MinValue; vacancy.ClosingDate = DateTime.UtcNow.AddDays(2); vacancy.ContractOwnerId = SeedData.Providers.HopwoodHallCollege.ProviderId; writeRepository.Create(vacancy); int totalResultsCount; var findResults = summaryRepository.Find(new ApprenticeshipVacancyQuery { RequestedPage = 1, LatestClosingDate = DateTime.UtcNow.AddDays(3), LiveDate = DateTime.UtcNow.AddHours(-2), PageSize = 10, DesiredStatuses = new List <VacancyStatus> { VacancyStatus.Live } }, out totalResultsCount); findResults.Should().HaveCount(1); totalResultsCount.Should().Be(1); findResults = summaryRepository.Find(new ApprenticeshipVacancyQuery { RequestedPage = 1, LatestClosingDate = DateTime.UtcNow.AddDays(3), LiveDate = DateTime.UtcNow.AddHours(-2), PageSize = 10, DesiredStatuses = new List <VacancyStatus> { VacancyStatus.Closed } }, out totalResultsCount); findResults.Should().HaveCount(0); totalResultsCount.Should().Be(0); findResults = summaryRepository.Find(new ApprenticeshipVacancyQuery { RequestedPage = 2, LatestClosingDate = DateTime.UtcNow.AddDays(3), LiveDate = DateTime.UtcNow.AddHours(-2), PageSize = 10, DesiredStatuses = new List <VacancyStatus> { VacancyStatus.Live } }, out totalResultsCount); findResults.Should().HaveCount(0); totalResultsCount.Should().Be(1); findResults = summaryRepository.Find(new ApprenticeshipVacancyQuery { RequestedPage = 2, LatestClosingDate = DateTime.UtcNow.AddDays(1), LiveDate = DateTime.UtcNow.AddHours(-2), PageSize = 10, DesiredStatuses = new List <VacancyStatus> { VacancyStatus.Live } }, out totalResultsCount); findResults.Should().HaveCount(0); totalResultsCount.Should().Be(0); findResults = summaryRepository.Find(new ApprenticeshipVacancyQuery { RequestedPage = 2, LatestClosingDate = DateTime.UtcNow.AddDays(3), LiveDate = DateTime.UtcNow.AddHours(2), PageSize = 10, DesiredStatuses = new List <VacancyStatus> { VacancyStatus.Live } }, out totalResultsCount); findResults.Should().HaveCount(0); totalResultsCount.Should().Be(0); }
public VacancyController(LockerDbContext lockerDbContext) { _dbContext = lockerDbContext; _vacancyRepo = new VacancyRepository(_dbContext); }
public VacancyService() { _vacancyRepository = new VacancyRepository(); }