コード例 #1
0
        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)));
        }
コード例 #2
0
 IList <Guid> ISearchEngineQuery.GetModified(DateTime?modifiedSince)
 {
     return(_repository.GetModified(modifiedSince));
 }