public void TestUpdateMembers() { var modifiedSince = DateTime.Now.AddMinutes(-10); var index = 0; // Member with no indexing before modified since. var member1 = CreateMember(++index, modifiedSince.AddMinutes(-10), null); // Member with no indexing after modified since. var member2 = CreateMember(++index, modifiedSince.AddMinutes(5), null); // Member with indexing before modified since. var member3 = CreateMember(++index, modifiedSince.AddMinutes(-10), modifiedSince.AddMinutes(-5)); // Member with indexing after modified since. var member4 = CreateMember(++index, modifiedSince.AddMinutes(-10), modifiedSince.AddMinutes(5)); // Member with last updated time before modified since. var member5 = CreateMember(++index, modifiedSince.AddMinutes(-5), modifiedSince.AddMinutes(-10)); // Member with last updated time after modified since. var member6 = CreateMember(++index, modifiedSince.AddMinutes(5), modifiedSince.AddMinutes(-10)); Assert.IsTrue(new[] { member4.Id }.CollectionEqual(_memberSearchEngineRepository.GetModified(modifiedSince))); // Fix them. var task = new UpdateIndexingTask(_connectionFactory); task.ExecuteTask(new[] { 10.ToString(CultureInfo.InvariantCulture) }); Assert.IsTrue(new[] { member1.Id, member2.Id, member4.Id, member5.Id, member6.Id }.CollectionEqual(_memberSearchEngineRepository.GetModified(modifiedSince))); }
IList <Guid> ISearchEngineQuery.GetModified(DateTime?modifiedSince) { return(_repository.GetModified(modifiedSince)); }