示例#1
0
        public void TestUpdateJobAds()
        {
            var modifiedSince = DateTime.Now.AddMinutes(-10);

            var employer = _employerAccountsCommand.CreateTestEmployer(0, _organisationsCommand.CreateTestOrganisation(0));

            // Job ad with no indexing before modified since.

            var jobAd1 = CreateJobAd(employer, modifiedSince.AddMinutes(-10), null);

            // Job ad with no indexing after modified since.

            var jobAd2 = CreateJobAd(employer, modifiedSince.AddMinutes(5), null);

            // Job ad with indexing before modified since.

            var jobAd3 = CreateJobAd(employer, modifiedSince.AddMinutes(-10), modifiedSince.AddMinutes(-5));

            // Job ad with indexing after modified since.

            var jobAd4 = CreateJobAd(employer, modifiedSince.AddMinutes(-10), modifiedSince.AddMinutes(5));

            // Job ad with last updated time before modified since.

            var jobAd5 = CreateJobAd(employer, modifiedSince.AddMinutes(-5), modifiedSince.AddMinutes(-10));

            // Job ad with last updated time after modified since.

            var jobAd6 = CreateJobAd(employer, modifiedSince.AddMinutes(5), modifiedSince.AddMinutes(-10));

            Assert.IsTrue(new[] { jobAd4.Id }.CollectionEqual(_jobAdSearchEngineRepository.GetSearchModified(modifiedSince)));

            // Fix them.

            var task = new UpdateIndexingTask(_connectionFactory);

            task.ExecuteTask(new[] { 10.ToString(CultureInfo.InvariantCulture) });

            Assert.IsTrue(new[] { jobAd1.Id, jobAd2.Id, jobAd4.Id, jobAd5.Id, jobAd6.Id }.CollectionEqual(_jobAdSearchEngineRepository.GetSearchModified(modifiedSince)));
        }
示例#2
0
 IList <Guid> ISearchEngineQuery.GetModified(DateTime?modifiedSince)
 {
     return(_repository.GetSearchModified(modifiedSince));
 }