You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2012/06/09 01:19:00 UTC
svn commit: r1348274 - in
/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index:
TestCustomNorms.java TestDocValuesTypeCompatibility.java TestNorms.java
Author: rmuir
Date: Fri Jun 8 23:19:00 2012
New Revision: 1348274
URL: http://svn.apache.org/viewvc?rev=1348274&view=rev
Log:
LUCENE-4087: avoid 3.x codec for docvalues tests
Modified:
lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java
lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDocValuesTypeCompatibility.java
lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestNorms.java
Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java?rev=1348274&r1=1348273&r2=1348274&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCustomNorms.java Fri Jun 8 23:19:00 2012
@@ -28,7 +28,9 @@ import org.apache.lucene.index.DocValues
import org.apache.lucene.search.similarities.DefaultSimilarity;
import org.apache.lucene.search.similarities.PerFieldSimilarityWrapper;
import org.apache.lucene.search.similarities.Similarity;
+import org.apache.lucene.store.Directory;
import org.apache.lucene.store.MockDirectoryWrapper;
+import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.LineFileDocs;
import org.apache.lucene.util.LuceneTestCase;
@@ -118,6 +120,57 @@ public class TestCustomNorms extends Luc
docs.close();
}
+
+ public void testIllegalCustomEncoder() throws Exception {
+ Directory dir = newDirectory();
+ IllegalCustomEncodingSimilarity similarity = new IllegalCustomEncodingSimilarity();
+ IndexWriterConfig config = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random()));
+ config.setSimilarity(similarity);
+ RandomIndexWriter writer = new RandomIndexWriter(random(), dir, config);
+ Document doc = new Document();
+ Field foo = newField("foo", "", TextField.TYPE_UNSTORED);
+ Field bar = newField("bar", "", TextField.TYPE_UNSTORED);
+ doc.add(foo);
+ doc.add(bar);
+
+ int numAdded = 0;
+ for (int i = 0; i < 100; i++) {
+ try {
+ bar.setStringValue("singleton");
+ similarity.useByte = random().nextBoolean();
+ writer.addDocument(doc);
+ numAdded++;
+ } catch (IllegalArgumentException e) {}
+ }
+
+
+ IndexReader reader = writer.getReader();
+ writer.close();
+ assertEquals(numAdded, reader.numDocs());
+ IndexReaderContext topReaderContext = reader.getTopReaderContext();
+ AtomicReaderContext[] leaves = topReaderContext.leaves();
+ for (int j = 0; j < leaves.length; j++) {
+ AtomicReader atomicReader = leaves[j].reader();
+ Source source = random().nextBoolean() ? atomicReader.normValues("foo").getSource() : atomicReader.normValues("foo").getDirectSource();
+ Bits liveDocs = atomicReader.getLiveDocs();
+ Type t = source.getType();
+ for (int i = 0; i < atomicReader.maxDoc(); i++) {
+ assertEquals(0, source.getFloat(i), 0.000f);
+ }
+
+
+ source = random().nextBoolean() ? atomicReader.normValues("bar").getSource() : atomicReader.normValues("bar").getDirectSource();
+ for (int i = 0; i < atomicReader.maxDoc(); i++) {
+ if (liveDocs == null || liveDocs.get(i)) {
+ assertEquals("type: " + t, 1, source.getFloat(i), 0.000f);
+ } else {
+ assertEquals("type: " + t, 0, source.getFloat(i), 0.000f);
+ }
+ }
+ }
+ reader.close();
+ dir.close();
+ }
public class MySimProvider extends PerFieldSimilarityWrapper {
Similarity delegate = new DefaultSimilarity();
@@ -190,5 +243,28 @@ public class TestCustomNorms extends Luc
}
}
+
+ class IllegalCustomEncodingSimilarity extends DefaultSimilarity {
+
+ public boolean useByte = false;
+ @Override
+ public byte encodeNormValue(float f) {
+ return (byte) f;
+ }
+
+ @Override
+ public float decodeNormValue(byte b) {
+ return (float) b;
+ }
+
+ @Override
+ public void computeNorm(FieldInvertState state, Norm norm) {
+ if (useByte) {
+ norm.setByte(encodeNormValue((float) state.getLength()));
+ } else {
+ norm.setFloat((float)state.getLength());
+ }
+ }
+ }
}
Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDocValuesTypeCompatibility.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDocValuesTypeCompatibility.java?rev=1348274&r1=1348273&r2=1348274&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDocValuesTypeCompatibility.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestDocValuesTypeCompatibility.java Fri Jun 8 23:19:00 2012
@@ -36,10 +36,12 @@ import org.apache.lucene.store.Directory
import org.apache.lucene.store.LockObtainFailedException;
import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util.LuceneTestCase.SuppressCodecs;
/**
* Tests compatibility of {@link DocValues.Type} during indexing
*/
+@SuppressCodecs("Lucene3x")
public class TestDocValuesTypeCompatibility extends LuceneTestCase {
public void testAddCompatibleIntTypes() throws CorruptIndexException,
Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestNorms.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestNorms.java?rev=1348274&r1=1348273&r2=1348274&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestNorms.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestNorms.java Fri Jun 8 23:19:00 2012
@@ -175,57 +175,6 @@ public class TestNorms extends LuceneTes
dir.close();
otherDir.close();
}
-
- public void testIllegalCustomEncoder() throws Exception {
- Directory dir = newDirectory();
- IllegalCustomEncodingSimilarity similarity = new IllegalCustomEncodingSimilarity();
- IndexWriterConfig config = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random()));
- config.setSimilarity(similarity);
- RandomIndexWriter writer = new RandomIndexWriter(random(), dir, config);
- Document doc = new Document();
- Field foo = newField("foo", "", TextField.TYPE_UNSTORED);
- Field bar = newField("bar", "", TextField.TYPE_UNSTORED);
- doc.add(foo);
- doc.add(bar);
-
- int numAdded = 0;
- for (int i = 0; i < 100; i++) {
- try {
- bar.setStringValue("singleton");
- similarity.useByte = random().nextBoolean();
- writer.addDocument(doc);
- numAdded++;
- } catch (IllegalArgumentException e) {}
- }
-
-
- IndexReader reader = writer.getReader();
- writer.close();
- assertEquals(numAdded, reader.numDocs());
- IndexReaderContext topReaderContext = reader.getTopReaderContext();
- AtomicReaderContext[] leaves = topReaderContext.leaves();
- for (int j = 0; j < leaves.length; j++) {
- AtomicReader atomicReader = leaves[j].reader();
- Source source = random().nextBoolean() ? atomicReader.normValues("foo").getSource() : atomicReader.normValues("foo").getDirectSource();
- Bits liveDocs = atomicReader.getLiveDocs();
- Type t = source.getType();
- for (int i = 0; i < atomicReader.maxDoc(); i++) {
- assertEquals(0, source.getFloat(i), 0.000f);
- }
-
-
- source = random().nextBoolean() ? atomicReader.normValues("bar").getSource() : atomicReader.normValues("bar").getDirectSource();
- for (int i = 0; i < atomicReader.maxDoc(); i++) {
- if (liveDocs == null || liveDocs.get(i)) {
- assertEquals("type: " + t, 1, source.getFloat(i), 0.000f);
- } else {
- assertEquals("type: " + t, 0, source.getFloat(i), 0.000f);
- }
- }
- }
- reader.close();
- dir.close();
- }
public void buildIndex(Directory dir, boolean writeNorms) throws IOException,
CorruptIndexException {
@@ -299,30 +248,5 @@ public class TestNorms extends LuceneTes
norm.setByte((byte) (0xFF & boost));
}
}
- }
-
-
- class IllegalCustomEncodingSimilarity extends DefaultSimilarity {
-
- public boolean useByte = false;
- @Override
- public byte encodeNormValue(float f) {
- return (byte) f;
- }
-
- @Override
- public float decodeNormValue(byte b) {
- return (float) b;
- }
-
- @Override
- public void computeNorm(FieldInvertState state, Norm norm) {
- if (useByte) {
- norm.setByte(encodeNormValue((float) state.getLength()));
- } else {
- norm.setFloat((float)state.getLength());
- }
- }
- }
-
+ }
}