You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jp...@apache.org on 2015/04/01 12:33:33 UTC
svn commit: r1670601 -
/lucene/dev/branches/branch_5x/lucene/suggest/src/test/org/apache/lucene/search/suggest/document/SuggestFieldTest.java
Author: jpountz
Date: Wed Apr 1 10:33:33 2015
New Revision: 1670601
URL: http://svn.apache.org/r1670601
Log:
Fix SuggestFieldTest to not always expect IndexWriter.tryDelete to succeed.
Modified:
lucene/dev/branches/branch_5x/lucene/suggest/src/test/org/apache/lucene/search/suggest/document/SuggestFieldTest.java
Modified: lucene/dev/branches/branch_5x/lucene/suggest/src/test/org/apache/lucene/search/suggest/document/SuggestFieldTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/lucene/suggest/src/test/org/apache/lucene/search/suggest/document/SuggestFieldTest.java?rev=1670601&r1=1670600&r2=1670601&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/lucene/suggest/src/test/org/apache/lucene/search/suggest/document/SuggestFieldTest.java (original)
+++ lucene/dev/branches/branch_5x/lucene/suggest/src/test/org/apache/lucene/search/suggest/document/SuggestFieldTest.java Wed Apr 1 10:33:33 2015
@@ -44,6 +44,7 @@ import org.apache.lucene.index.IndexWrit
import org.apache.lucene.index.IndexableField;
import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.RandomIndexWriter;
+import org.apache.lucene.index.Term;
import org.apache.lucene.queries.TermsQuery;
import org.apache.lucene.search.DocIdSet;
import org.apache.lucene.search.DocIdSetIterator;
@@ -55,9 +56,11 @@ import org.apache.lucene.search.TopDocs;
import org.apache.lucene.store.Directory;
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
+import org.apache.lucene.util.BytesRefBuilder;
import org.apache.lucene.util.FixedBitSet;
import org.apache.lucene.util.LineFileDocs;
import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util.NumericUtils;
import org.apache.lucene.util.TestUtil;
import org.junit.After;
import org.junit.Before;
@@ -198,22 +201,9 @@ public class SuggestFieldTest extends Lu
document = new Document();
}
- // get docIDs to delete
- DirectoryReader reader = DirectoryReader.open(iw, false);
- List<Integer> docIdsToDelete = new ArrayList<>();
- for (int i = 0; i < reader.maxDoc(); i++) {
- Document doc = reader.document(i);
- if ("delete".equals(doc.get("str_field"))) {
- docIdsToDelete.add(i);
- }
- }
-
- for (Integer docID : docIdsToDelete) {
- assertTrue(iw.tryDeleteDocument(reader, docID));
- }
- reader.close();
+ iw.deleteDocuments(new Term("str_field", "delete"));
- reader = DirectoryReader.open(iw, false);
+ DirectoryReader reader = DirectoryReader.open(iw, false);
SuggestIndexSearcher indexSearcher = new SuggestIndexSearcher(reader, analyzer);
TopSuggestDocs suggest = indexSearcher.suggest("suggest_field", "abc_", numLive);
assertSuggestions(suggest, expectedEntries.toArray(new Entry[expectedEntries.size()]));
@@ -254,16 +244,13 @@ public class SuggestFieldTest extends Lu
for (int i = 0; i < num; i++) {
Document document = new Document();
document.add(newSuggestField("suggest_field", "abc_" + i, i));
+ document.add(newStringField("delete", "delete", Field.Store.NO));
iw.addDocument(document);
}
- DirectoryReader reader = DirectoryReader.open(iw, false);
- for (int docID = 0; docID < reader.maxDoc(); docID++) {
- assertTrue(iw.tryDeleteDocument(reader, docID));
- }
- reader.close();
+ iw.deleteDocuments(new Term("delete", "delete"));
- reader = DirectoryReader.open(iw, false);
+ DirectoryReader reader = DirectoryReader.open(iw, false);
SuggestIndexSearcher indexSearcher = new SuggestIndexSearcher(reader, analyzer);
TopSuggestDocs suggest = indexSearcher.suggest("suggest_field", "abc_", num);
assertThat(suggest.totalHits, equalTo(0));
@@ -285,20 +272,9 @@ public class SuggestFieldTest extends Lu
iw.addDocument(document);
}
- DirectoryReader reader = DirectoryReader.open(iw, false);
- // delete all but the lowest scored suggestion
- for (int docID = 0; docID < reader.maxDoc(); docID++) {
- Document doc = reader.document(docID);
- IndexableField[] weights = doc.getFields("weight_fld");
- assertThat(weights.length, equalTo(1));
- int weight = (int) weights[0].numericValue();
- if (weight != 1) {
- assertTrue(iw.tryDeleteDocument(reader, docID));
- }
- }
- reader.close();
+ iw.deleteDocuments(NumericRangeQuery.newIntRange("weight_fld", 2, null, true, false));
- reader = DirectoryReader.open(iw, false);
+ DirectoryReader reader = DirectoryReader.open(iw, true);
SuggestIndexSearcher indexSearcher = new SuggestIndexSearcher(reader, analyzer);
TopSuggestDocs suggest = indexSearcher.suggest("suggest_field", "abc_", 1);
assertSuggestions(suggest, new Entry("abc_1", 1));