You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sh...@apache.org on 2011/07/04 16:06:38 UTC
svn commit: r1142676 -
/lucene/dev/trunk/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java
Author: shaie
Date: Mon Jul 4 14:06:38 2011
New Revision: 1142676
URL: http://svn.apache.org/viewvc?rev=1142676&view=rev
Log:
LUCENE-3268: make TestScoredDocIDsUtils more robust to document deletions
Modified:
lucene/dev/trunk/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java
Modified: lucene/dev/trunk/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java?rev=1142676&r1=1142675&r2=1142676&view=diff
==============================================================================
--- lucene/dev/trunk/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java (original)
+++ lucene/dev/trunk/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java Mon Jul 4 14:06:38 2011
@@ -126,23 +126,18 @@ public class TestScoredDocIDsUtils exten
Directory dir = newDirectory();
IndexReader reader = createReaderWithNDocs(random, N_DOCS, docFactory, dir);
try {
- int numErasedDocs = reader.numDeletedDocs();
-
ScoredDocIDs allDocs = ScoredDocIdsUtils.createAllDocsScoredDocIDs(reader);
ScoredDocIDsIterator it = allDocs.iterator();
int numIteratedDocs = 0;
while (it.next()) {
numIteratedDocs++;
int docNum = it.getDocID();
- assertFalse(
- "Deleted docs must not appear in the allDocsScoredDocIds set: " + docNum,
- docFactory.markedDeleted(docNum));
+ assertNull(
+ "Deleted docs must not appear in the allDocsScoredDocIds set: " + docNum,
+ reader.document(docNum).getFieldable("del"));
}
assertEquals("Wrong number of (live) documents", allDocs.size(), numIteratedDocs);
-
- assertEquals("Wrong number of (live) documents", N_DOCS
- - numErasedDocs, numIteratedDocs);
// Get all 'alpha' documents
ScoredDocIdCollector collector = ScoredDocIdCollector.create(reader.maxDoc(), false);
@@ -169,9 +164,9 @@ public class TestScoredDocIDsUtils exten
assertFalse(
"Complement-Set must not contain deleted documents (doc="+docNum+")",
deleted != null && deleted.get(docNum));
- assertFalse(
- "Complement-Set must not contain deleted documents (doc="+docNum+")",
- docFactory.markedDeleted(docNum));
+ assertNull(
+ "Complement-Set must not contain docs from the original set (doc="+ docNum+")",
+ reader.document(docNum).getFieldable("del"));
assertFalse(
"Complement-Set must not contain docs from the original set (doc="+docNum+")",
resultSet.fastGet(docNum));
@@ -211,6 +206,9 @@ public class TestScoredDocIDsUtils exten
Document doc = new Document();
if (markedDeleted(docNum)) {
doc.add(deletionMark);
+ // Add a special field for docs that are marked for deletion. Later we
+ // assert that those docs are not returned by all-scored-doc-IDs.
+ doc.add(new Field("del", Integer.toString(docNum), Store.YES, Index.NO));
}
if (haveAlpha(docNum)) {
@@ -225,11 +223,9 @@ public class TestScoredDocIDsUtils exten
}
static IndexReader createReaderWithNDocs(Random random, int nDocs, DocumentFactory docFactory, Directory dir) throws IOException {
- // Create the index - force log-merge policy since we rely on docs order.
RandomIndexWriter writer = new RandomIndexWriter(random, dir,
newIndexWriterConfig(random, TEST_VERSION_CURRENT,
- new MockAnalyzer(random, MockTokenizer.KEYWORD, false))
- .setMergePolicy(newLogMergePolicy()));
+ new MockAnalyzer(random, MockTokenizer.KEYWORD, false)));
for (int docNum = 0; docNum < nDocs; docNum++) {
writer.addDocument(docFactory.getDoc(docNum));
}