Index: src/test/org/apache/lucene/index/TestStressIndexing2.java =================================================================== --- src/test/org/apache/lucene/index/TestStressIndexing2.java (revision 620768) +++ src/test/org/apache/lucene/index/TestStressIndexing2.java (working copy) @@ -38,9 +38,9 @@ public void testRandom() throws Exception { - Directory dir1 = new RAMDirectory(); + Directory dir1 = new MockRAMDirectory(); // dir1 = FSDirectory.getDirectory("foofoofoo"); - Directory dir2 = new RAMDirectory(); + Directory dir2 = new MockRAMDirectory(); // mergeFactor=2; maxBufferedDocs=2; Map docs = indexRandom(1, 3, 2, dir1); Map docs = indexRandom(10, 100, 100, dir1); indexSerial(docs, dir2); @@ -54,7 +54,8 @@ public void testMultiConfig() throws Exception { // test lots of smaller different params together - for (int i=0; i<100; i++) { // increase iterations for better testing + for (int i=0; i<100; i++) { // increase iterations for + // better testing sameFieldOrder=r.nextBoolean(); autoCommit=r.nextBoolean(); mergeFactor=r.nextInt(3)+2; @@ -65,8 +66,8 @@ int iter=r.nextInt(10)+1; int range=r.nextInt(20)+1; - Directory dir1 = new RAMDirectory(); - Directory dir2 = new RAMDirectory(); + Directory dir1 = new MockRAMDirectory(); + Directory dir2 = new MockRAMDirectory(); Map docs = indexRandom(nThreads, iter, range, dir1); indexSerial(docs, dir2); verifyEquals(dir1, dir2, "id"); @@ -87,7 +88,7 @@ // everything. public Map indexRandom(int nThreads, int iterations, int range, Directory dir) throws IOException, InterruptedException { - IndexWriter w = new IndexWriter(dir, autoCommit, new WhitespaceAnalyzer(), true); + IndexWriter w = new IndexWriter(dir, autoCommit, new WhitespaceAnalyzer(), true, IndexWriter.MaxFieldLength.UNLIMITED); w.setUseCompoundFile(false); /*** w.setMaxMergeDocs(Integer.MAX_VALUE); @@ -195,8 +196,11 @@ r2r1[id2] = id1; // verify stored fields are equivalent - verifyEquals(r1.document(id1), r2.document(id2)); + verifyEquals(r1.document(id1), r2.document(id2)); + // verify term vectors are equivalent + verifyEquals(r1.getTermFreqVectors(id1), r2.getTermFreqVectors(id2)); + } while (termEnum.next()); termEnum.close(); @@ -300,7 +304,55 @@ } } + public static void verifyEquals(TermFreqVector[] d1, TermFreqVector[] d2) { + if (d1 == null) { + assertTrue(d2 == null); + return; + } + assertTrue(d2 != null); + assertEquals(d1.length, d2.length); + for(int i=0;i