You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@lucene.apache.org by mi...@apache.org on 2006/11/22 18:01:32 UTC
svn commit: r478239 - in /lucene/java/trunk/src/test/org/apache/lucene/index:
TestBackwardsCompatibility.java TestIndexFileDeleter.java
Author: mikemccand
Date: Wed Nov 22 09:01:31 2006
New Revision: 478239
URL: http://svn.apache.org/viewvc?view=rev&rev=478239
Log:
LUCENE-720: fix two new unit tests (with lockless) to dynamically compute field number since this number can vary depending on JRE
Modified:
lucene/java/trunk/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
lucene/java/trunk/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
Modified: lucene/java/trunk/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java?view=diff&rev=478239&r1=478238&r2=478239
==============================================================================
--- lucene/java/trunk/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java (original)
+++ lucene/java/trunk/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java Wed Nov 22 09:01:31 2006
@@ -274,7 +274,7 @@
/* Verifies that the expected file names were produced */
// disable until hardcoded file names are fixes:
- public void _testExactFileNames() throws IOException {
+ public void testExactFileNames() throws IOException {
String outputDir = "lucene.backwardscompat0.index";
Directory dir = FSDirectory.getDirectory(outputDir, true);
@@ -295,12 +295,30 @@
reader.setNorm(21, "content", (float) 1.5);
reader.close();
+ // The numbering of fields can vary depending on which
+ // JRE is in use. On some JREs we see content bound to
+ // field 0; on others, field 1. So, here we have to
+ // figure out which field number corresponds to
+ // "content", and then set our expected file names below
+ // accordingly:
+ CompoundFileReader cfsReader = new CompoundFileReader(dir, "_2.cfs");
+ FieldInfos fieldInfos = new FieldInfos(cfsReader, "_2.fnm");
+ int contentFieldIndex = -1;
+ for(int i=0;i<fieldInfos.size();i++) {
+ FieldInfo fi = fieldInfos.fieldInfo(i);
+ if (fi.name.equals("content")) {
+ contentFieldIndex = i;
+ break;
+ }
+ }
+ assertTrue("could not locate the 'content' field number in the _2.cfs segment", contentFieldIndex != -1);
+
// Now verify file names:
String[] expected = {"_0.cfs",
"_0_1.del",
"_1.cfs",
"_2.cfs",
- "_2_1.s0",
+ "_2_1.s" + contentFieldIndex,
"_3.cfs",
"segments_a",
"segments.gen"};
Modified: lucene/java/trunk/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/test/org/apache/lucene/index/TestIndexFileDeleter.java?view=diff&rev=478239&r1=478238&r2=478239
==============================================================================
--- lucene/java/trunk/src/test/org/apache/lucene/index/TestIndexFileDeleter.java (original)
+++ lucene/java/trunk/src/test/org/apache/lucene/index/TestIndexFileDeleter.java Wed Nov 22 09:01:31 2006
@@ -29,12 +29,7 @@
public class TestIndexFileDeleter extends TestCase
{
- // disable until hardcoded file names are fixes:
- public void testDummy() {
- assertTrue(true);
- }
-
- public void _testDeleteLeftoverFiles() throws IOException {
+ public void testDeleteLeftoverFiles() throws IOException {
Directory dir = new RAMDirectory();
@@ -64,25 +59,45 @@
}
*/
+ // The numbering of fields can vary depending on which
+ // JRE is in use. On some JREs we see content bound to
+ // field 0; on others, field 1. So, here we have to
+ // figure out which field number corresponds to
+ // "content", and then set our expected file names below
+ // accordingly:
+ CompoundFileReader cfsReader = new CompoundFileReader(dir, "_2.cfs");
+ FieldInfos fieldInfos = new FieldInfos(cfsReader, "_2.fnm");
+ int contentFieldIndex = -1;
+ for(int i=0;i<fieldInfos.size();i++) {
+ FieldInfo fi = fieldInfos.fieldInfo(i);
+ if (fi.name.equals("content")) {
+ contentFieldIndex = i;
+ break;
+ }
+ }
+ assertTrue("could not locate the 'content' field number in the _2.cfs segment", contentFieldIndex != -1);
+
+ String normSuffix = "s" + contentFieldIndex;
+
// Create a bogus separate norms file for a
// segment/field that actually has a separate norms file
// already:
- copyFile(dir, "_2_1.s0", "_2_2.s0");
+ copyFile(dir, "_2_1." + normSuffix, "_2_2." + normSuffix);
// Create a bogus separate norms file for a
// segment/field that actually has a separate norms file
// already, using the "not compound file" extension:
- copyFile(dir, "_2_1.s0", "_2_2.f0");
+ copyFile(dir, "_2_1." + normSuffix, "_2_2.f" + contentFieldIndex);
// Create a bogus separate norms file for a
// segment/field that does not have a separate norms
// file already:
- copyFile(dir, "_2_1.s0", "_1_1.s0");
+ copyFile(dir, "_2_1." + normSuffix, "_1_1." + normSuffix);
// Create a bogus separate norms file for a
// segment/field that does not have a separate norms
// file already using the "not compound file" extension:
- copyFile(dir, "_2_1.s0", "_1_1.f0");
+ copyFile(dir, "_2_1." + normSuffix, "_1_1.f" + contentFieldIndex);
// Create a bogus separate del file for a
// segment that already has a separate del file: