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 2010/08/12 22:56:29 UTC

svn commit: r984968 [4/6] - in /lucene/dev/trunk: lucene/contrib/highlighter/src/test/org/apache/lucene/search/highlight/ lucene/contrib/highlighter/src/test/org/apache/lucene/search/vectorhighlight/ lucene/contrib/instantiated/src/test/org/apache/luce...

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java Thu Aug 12 20:56:23 2010
@@ -70,7 +70,7 @@ public class TestIndexWriterReader exten
   public void testUpdateDocument() throws Exception {
     boolean optimize = true;
 
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
 
     // create the index
@@ -131,7 +131,7 @@ public class TestIndexWriterReader exten
   public void testAddIndexes() throws Exception {
     boolean optimize = false;
 
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer.setInfoStream(infoStream);
     // create the index
@@ -139,7 +139,7 @@ public class TestIndexWriterReader exten
     writer.flush(false, true, true);
 
     // create a 2nd index
-    Directory dir2 = new MockRAMDirectory();
+    Directory dir2 = newDirectory(random);
     IndexWriter writer2 = new IndexWriter(dir2, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer2.setInfoStream(infoStream);
     createIndexNoClose(!optimize, "index2", writer2);
@@ -171,17 +171,18 @@ public class TestIndexWriterReader exten
     r1.close();
     writer.close();
     dir1.close();
+    dir2.close();
   }
   
   public void testAddIndexes2() throws Exception {
     boolean optimize = false;
 
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer.setInfoStream(infoStream);
 
     // create a 2nd index
-    Directory dir2 = new MockRAMDirectory();
+    Directory dir2 = newDirectory(random);
     IndexWriter writer2 = new IndexWriter(dir2, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer2.setInfoStream(infoStream);
     createIndexNoClose(!optimize, "index2", writer2);
@@ -199,6 +200,7 @@ public class TestIndexWriterReader exten
     r1.close();
     writer.close();
     dir1.close();
+    dir2.close();
   }
 
   /**
@@ -209,7 +211,7 @@ public class TestIndexWriterReader exten
   public void testDeleteFromIndexWriter() throws Exception {
     boolean optimize = true;
 
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()).setReaderTermsIndexDivisor(2));
     writer.setInfoStream(infoStream);
     // create the index
@@ -261,7 +263,7 @@ public class TestIndexWriterReader exten
     final int numIter = 2;
     int numDirs = 3;
     
-    Directory mainDir = new MockRAMDirectory();
+    Directory mainDir = newDirectory(random);
     IndexWriter mainWriter = new IndexWriter(mainDir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     mainWriter.setInfoStream(infoStream);
     AddDirectoriesThreads addDirThreads = new AddDirectoriesThreads(numIter, mainWriter);
@@ -304,7 +306,7 @@ public class TestIndexWriterReader exten
     public AddDirectoriesThreads(int numDirs, IndexWriter mainWriter) throws Throwable {
       this.numDirs = numDirs;
       this.mainWriter = mainWriter;
-      addDir = new MockRAMDirectory();
+      addDir = newDirectory(random);
       IndexWriter writer = new IndexWriter(addDir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()).setMaxBufferedDocs(2));
       for (int i = 0; i < NUM_INIT_DOCS; i++) {
         Document doc = createDocument(i, "addindex", 4);
@@ -410,7 +412,7 @@ public class TestIndexWriterReader exten
    * IW.getReader
    */
   public void doTestIndexWriterReopenSegment(boolean optimize) throws Exception {
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer.setInfoStream(infoStream);
     IndexReader r1 = writer.getReader();
@@ -521,7 +523,7 @@ public class TestIndexWriterReader exten
 
   public void testMergeWarmer() throws Exception {
 
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     // Enroll warmer
     MyWarmer warmer = new MyWarmer();
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random,
@@ -556,7 +558,7 @@ public class TestIndexWriterReader exten
   }
 
   public void testAfterCommit() throws Exception {
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()).setMergeScheduler(new ConcurrentMergeScheduler()));
     writer.commit();
     writer.setInfoStream(infoStream);
@@ -589,7 +591,7 @@ public class TestIndexWriterReader exten
 
   // Make sure reader remains usable even if IndexWriter closes
   public void testAfterClose() throws Exception {
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer.setInfoStream(infoStream);
 
@@ -618,7 +620,7 @@ public class TestIndexWriterReader exten
 
   // Stress test reopen during addIndexes
   public void testDuringAddIndexes() throws Exception {
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     final IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer.setInfoStream(infoStream);
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(2);
@@ -695,7 +697,7 @@ public class TestIndexWriterReader exten
 
   // Stress test reopen during add/delete
   public void testDuringAddDelete() throws Exception {
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     final IndexWriter writer = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     writer.setInfoStream(infoStream);
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(2);
@@ -775,7 +777,7 @@ public class TestIndexWriterReader exten
   }
 
   public void testExpungeDeletes() throws Throwable {
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     final IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     Document doc = new Document();
     doc.add(new Field("field", "a b c", Field.Store.NO, Field.Index.ANALYZED));
@@ -799,7 +801,7 @@ public class TestIndexWriterReader exten
   }
 
   public void testDeletesNumDocs() throws Throwable {
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     final IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     Document doc = new Document();
     doc.add(new Field("field", "a b c", Field.Store.NO, Field.Index.ANALYZED));
@@ -829,16 +831,17 @@ public class TestIndexWriterReader exten
   
   public void testEmptyIndex() throws Exception {
     // Ensures that getReader works on an empty index, which hasn't been committed yet.
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     IndexReader r = w.getReader();
     assertEquals(0, r.numDocs());
     r.close();
     w.close();
+    dir.close();
   }
 
   public void testSegmentWarmer() throws Exception {
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer())
                                     .setMaxBufferedDocs(2).setReaderPooling(true));
     ((LogMergePolicy) w.getMergePolicy()).setMergeFactor(10);

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyBug.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyBug.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyBug.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyBug.java Thu Aug 12 20:56:23 2010
@@ -67,10 +67,10 @@ public class TestLazyBug extends LuceneT
       }
     };
   
-  private Directory makeIndex() throws RuntimeException { 
-    Directory dir = new MockRAMDirectory();
+  private Directory makeIndex() throws Exception { 
+    Random r = newRandom();
+    Directory dir = newDirectory(r);
     try {
-      Random r = newRandom();
       IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(r,
           TEST_VERSION_CURRENT, new MockAnalyzer()));
       LogMergePolicy lmp = (LogMergePolicy) writer.getConfig().getMergePolicy();
@@ -120,6 +120,7 @@ public class TestLazyBug extends LuceneT
       }
     }
     reader.close();
+    dir.close();
   }
 
   public void testLazyWorks() throws Exception {

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyProxSkipping.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyProxSkipping.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyProxSkipping.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestLazyProxSkipping.java Thu Aug 12 20:56:23 2010
@@ -120,8 +120,9 @@ public class TestLazyProxSkipping extend
     }
     
     public void testSeek() throws IOException {
-        Directory directory = new MockRAMDirectory();
-        IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(newRandom(), TEST_VERSION_CURRENT, new MockAnalyzer()));
+        Random random = newRandom();
+        Directory directory = newDirectory(random);
+        IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
         for (int i = 0; i < 10; i++) {
             Document doc = new Document();
             doc.add(new Field(this.field, "a b", Field.Store.YES, Field.Index.ANALYZED));
@@ -152,7 +153,8 @@ public class TestLazyProxSkipping extend
             assertEquals(tp.docID(), i);
             assertEquals(tp.nextPosition(), 0);
         }
-        
+        reader.close();
+        directory.close();
         
     }
     

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestMultiFields.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestMultiFields.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestMultiFields.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestMultiFields.java Thu Aug 12 20:56:23 2010
@@ -31,7 +31,7 @@ public class TestMultiFields extends Luc
 
     int num = 2 * RANDOM_MULTIPLIER;
     for (int iter = 0; iter < num; iter++) {
-      Directory dir = new MockRAMDirectory();
+      Directory dir = newDirectory(r);
 
       IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(r, TEST_VERSION_CURRENT, new MockAnalyzer()).setMergePolicy(NoMergePolicy.COMPOUND_FILES));
 
@@ -131,8 +131,9 @@ public class TestMultiFields extends Luc
   */
 
   public void testSeparateEnums() throws Exception {
-    Directory dir = new MockRAMDirectory();
-    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(newRandom(), TEST_VERSION_CURRENT, new MockAnalyzer()));
+    Random random = newRandom();
+    Directory dir = newDirectory(random);
+    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     Document d = new Document();
     d.add(new Field("f", "j", Field.Store.NO, Field.Index.NOT_ANALYZED));
     w.addDocument(d);

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java Thu Aug 12 20:56:23 2010
@@ -31,7 +31,7 @@ public class TestNRTReaderWithThreads ex
   AtomicInteger seq = new AtomicInteger(1);
 
   public void testIndexing() throws Exception {
-    Directory mainDir = new MockRAMDirectory();
+    Directory mainDir = newDirectory(random);
     IndexWriter writer = new IndexWriter(mainDir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()).setMaxBufferedDocs(10));
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(2);
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setUseCompoundFile(false);

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNewestSegment.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNewestSegment.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNewestSegment.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNewestSegment.java Thu Aug 12 20:56:23 2010
@@ -17,6 +17,8 @@ package org.apache.lucene.index;
  * limitations under the License.
  */
 
+import java.util.Random;
+
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.index.IndexWriter.MaxFieldLength;
@@ -25,9 +27,12 @@ import org.apache.lucene.util.LuceneTest
 
 public class TestNewestSegment extends LuceneTestCase {
   public void testNewestSegment() throws Exception {
-    MockRAMDirectory directory = new MockRAMDirectory();
+    Random random = newRandom();
+    MockRAMDirectory directory = newDirectory(random);
     Analyzer analyzer = new MockAnalyzer();
-    IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(newRandom(), TEST_VERSION_CURRENT, new MockAnalyzer()));
+    IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     assertNull(writer.newestSegment());
+    writer.close();
+    directory.close();
   }
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNoDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNoDeletionPolicy.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNoDeletionPolicy.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNoDeletionPolicy.java Thu Aug 12 20:56:23 2010
@@ -23,6 +23,7 @@ import java.lang.reflect.Constructor;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 import java.util.Arrays;
+import java.util.Random;
 
 import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.document.Document;
@@ -73,8 +74,9 @@ public class TestNoDeletionPolicy extend
 
   @Test
   public void testAllCommitsRemain() throws Exception {
-    Directory dir = new MockRAMDirectory();
-    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(newRandom(),
+    Random random = newRandom();
+    Directory dir = newDirectory(random);
+    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(random,
         TEST_VERSION_CURRENT, new MockAnalyzer())
         .setIndexDeletionPolicy(NoDeletionPolicy.INSTANCE));
     for (int i = 0; i < 10; i++) {
@@ -85,6 +87,7 @@ public class TestNoDeletionPolicy extend
       assertEquals("wrong number of commits !", i + 1, IndexReader.listCommits(dir).size());
     }
     writer.close();
+    dir.close();
   }
   
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNorms.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNorms.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNorms.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestNorms.java Thu Aug 12 20:56:23 2010
@@ -76,7 +76,7 @@ public class TestNorms extends LuceneTes
    */
   public void testNorms() throws IOException {
     Random random = newRandom();
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
 
     norms = new ArrayList<Float>();
     modifiedNorms = new ArrayList<Float>();
@@ -93,13 +93,13 @@ public class TestNorms extends LuceneTes
     modifiedNorms = new ArrayList<Float>();
     numDocNorms = 0;
     
-    Directory dir2 = new MockRAMDirectory();
+    Directory dir2 = newDirectory(random);
 
     createIndex(random, dir2);
     doTestNorms(random, dir2);
 
     // add index1 and index2 to a third index: index3
-    Directory dir3 = new MockRAMDirectory();
+    Directory dir3 = newDirectory(random);
 
     createIndex(random, dir3);
     IndexWriter iw = new IndexWriter(dir3, newIndexWriterConfig(random,

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestOmitTf.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestOmitTf.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestOmitTf.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestOmitTf.java Thu Aug 12 20:56:23 2010
@@ -19,6 +19,7 @@ package org.apache.lucene.index;
 
 import java.io.IOException;
 import java.util.Collection;
+import java.util.Random;
 
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util._TestUtil;
@@ -29,12 +30,18 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.search.*;
 import org.apache.lucene.search.BooleanClause.Occur;
 import org.apache.lucene.store.Directory;
-import org.apache.lucene.store.MockRAMDirectory;
 import org.apache.lucene.search.Explanation.IDFExplanation;
 
 
 public class TestOmitTf extends LuceneTestCase {
-    
+  private Random random;
+  
+  @Override
+  public void setUp() throws Exception {
+    super.setUp();
+    random = newRandom();
+  }
+  
   public static class SimpleSimilarity extends Similarity {
     @Override public float lengthNorm(String field, int numTerms) { return 1.0f; }
     @Override public float queryNorm(float sumOfSquaredWeights) { return 1.0f; }
@@ -59,9 +66,9 @@ public class TestOmitTf extends LuceneTe
   // Tests whether the DocumentWriter correctly enable the
   // omitTermFreqAndPositions bit in the FieldInfo
   public void testOmitTermFreqAndPositions() throws Exception {
-    Directory ram = new MockRAMDirectory();
+    Directory ram = newDirectory(random);
     Analyzer analyzer = new MockAnalyzer();
-    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(newRandom(), TEST_VERSION_CURRENT, analyzer));
+    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(random, TEST_VERSION_CURRENT, analyzer));
     Document d = new Document();
         
     // this field will have Tf
@@ -106,9 +113,9 @@ public class TestOmitTf extends LuceneTe
   // Tests whether merging of docs that have different
   // omitTermFreqAndPositions for the same field works
   public void testMixedMerge() throws Exception {
-    Directory ram = new MockRAMDirectory();
+    Directory ram = newDirectory(random);
     Analyzer analyzer = new MockAnalyzer();
-    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(newRandom(),
+    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(random,
         TEST_VERSION_CURRENT, analyzer).setMaxBufferedDocs(3));
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(2);
     Document d = new Document();
@@ -159,9 +166,9 @@ public class TestOmitTf extends LuceneTe
   // field X, then adding docs that do omitTermFreqAndPositions for that same
   // field, 
   public void testMixedRAM() throws Exception {
-    Directory ram = new MockRAMDirectory();
+    Directory ram = newDirectory(random);
     Analyzer analyzer = new MockAnalyzer();
-    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(newRandom(),
+    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(random,
         TEST_VERSION_CURRENT, analyzer).setMaxBufferedDocs(10));
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(2);
     Document d = new Document();
@@ -207,9 +214,9 @@ public class TestOmitTf extends LuceneTe
 
   // Verifies no *.prx exists when all fields omit term freq:
   public void testNoPrxFile() throws Throwable {
-    Directory ram = new MockRAMDirectory();
+    Directory ram = newDirectory(random);
     Analyzer analyzer = new MockAnalyzer();
-    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(newRandom(),
+    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(random,
         TEST_VERSION_CURRENT, analyzer).setMaxBufferedDocs(3));
     LogMergePolicy lmp = (LogMergePolicy) writer.getConfig().getMergePolicy();
     lmp.setMergeFactor(2);
@@ -240,9 +247,9 @@ public class TestOmitTf extends LuceneTe
  
   // Test scores with one field with Term Freqs and one without, otherwise with equal content 
   public void testBasic() throws Exception {
-    Directory dir = new MockRAMDirectory();  
+    Directory dir = newDirectory(random);  
     Analyzer analyzer = new MockAnalyzer();
-    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(newRandom(),
+    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(random,
         TEST_VERSION_CURRENT, analyzer).setMaxBufferedDocs(2)
         .setSimilarity(new SimpleSimilarity()));
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(2);

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReader.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReader.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReader.java Thu Aug 12 20:56:23 2010
@@ -40,9 +40,10 @@ import org.apache.lucene.util.LuceneTest
 
 public class TestParallelReader extends LuceneTestCase {
 
-  private Searcher parallel;
-  private Searcher single;
+  private IndexSearcher parallel;
+  private IndexSearcher single;
   private Random random;
+  private Directory dir, dir1, dir2;
   
   @Override
   protected void setUp() throws Exception {
@@ -51,6 +52,16 @@ public class TestParallelReader extends 
     single = single(random);
     parallel = parallel(random);
   }
+  
+  @Override
+  protected void tearDown() throws Exception {
+    single.getIndexReader().close();
+    parallel.getIndexReader().close();
+    dir.close();
+    dir1.close();
+    dir2.close();
+    super.tearDown();
+  }
 
   public void testQueries() throws Exception {
     queryTest(new TermQuery(new Term("f1", "v1")));
@@ -80,6 +91,9 @@ public class TestParallelReader extends 
     assertTrue(fieldNames.contains("f2"));
     assertTrue(fieldNames.contains("f3"));
     assertTrue(fieldNames.contains("f4"));
+    pr.close();
+    dir1.close();
+    dir2.close();
   }
   
   public void testDocument() throws IOException {
@@ -101,6 +115,9 @@ public class TestParallelReader extends 
     assertEquals("v2", doc24.get("f4"));
     assertEquals("v2", doc223.get("f2"));
     assertEquals("v2", doc223.get("f3"));
+    pr.close();
+    dir1.close();
+    dir2.close();
   }
   
   public void testIncompatibleIndexes() throws IOException {
@@ -108,7 +125,7 @@ public class TestParallelReader extends 
     Directory dir1 = getDir1(random);
 
     // one document only:
-    Directory dir2 = new MockRAMDirectory();
+    Directory dir2 = newDirectory(random);
     IndexWriter w2 = new IndexWriter(dir2, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     Document d3 = new Document();
     d3.add(new Field("f3", "v1", Field.Store.YES, Field.Index.ANALYZED));
@@ -117,12 +134,17 @@ public class TestParallelReader extends 
     
     ParallelReader pr = new ParallelReader();
     pr.add(IndexReader.open(dir1, false));
+    IndexReader ir = IndexReader.open(dir2, false);
     try {
-      pr.add(IndexReader.open(dir2, false));
+      pr.add(ir);
       fail("didn't get exptected exception: indexes don't have same number of documents");
     } catch (IllegalArgumentException e) {
       // expected exception
     }
+    pr.close();
+    ir.close();
+    dir1.close();
+    dir2.close();
   }
   
   public void testIsCurrent() throws IOException {
@@ -147,6 +169,9 @@ public class TestParallelReader extends 
     
     // now both are not current anymore
     assertFalse(pr.isCurrent());
+    pr.close();
+    dir1.close();
+    dir2.close();
   }
 
   public void testIsOptimized() throws IOException {
@@ -197,7 +222,8 @@ public class TestParallelReader extends 
     // now both indexes are optimized
     assertTrue(pr.isOptimized());
     pr.close();
-
+    dir1.close();
+    dir2.close();
   }
 
   private void queryTest(Query query) throws IOException {
@@ -216,8 +242,8 @@ public class TestParallelReader extends 
   }
 
   // Fields 1-4 indexed together:
-  private Searcher single(Random random) throws IOException {
-    Directory dir = new MockRAMDirectory();
+  private IndexSearcher single(Random random) throws IOException {
+    dir = newDirectory(random);
     IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     Document d1 = new Document();
     d1.add(new Field("f1", "v1", Field.Store.YES, Field.Index.ANALYZED));
@@ -237,9 +263,9 @@ public class TestParallelReader extends 
   }
 
   // Fields 1 & 2 in one index, 3 & 4 in other, with ParallelReader:
-  private Searcher parallel(Random random) throws IOException {
-    Directory dir1 = getDir1(random);
-    Directory dir2 = getDir2(random);
+  private IndexSearcher parallel(Random random) throws IOException {
+    dir1 = getDir1(random);
+    dir2 = getDir2(random);
     ParallelReader pr = new ParallelReader();
     pr.add(IndexReader.open(dir1, false));
     pr.add(IndexReader.open(dir2, false));
@@ -247,7 +273,7 @@ public class TestParallelReader extends 
   }
 
   private Directory getDir1(Random random) throws IOException {
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(random);
     IndexWriter w1 = new IndexWriter(dir1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     Document d1 = new Document();
     d1.add(new Field("f1", "v1", Field.Store.YES, Field.Index.ANALYZED));
@@ -262,7 +288,7 @@ public class TestParallelReader extends 
   }
 
   private Directory getDir2(Random random) throws IOException {
-    Directory dir2 = new MockRAMDirectory();
+    Directory dir2 = newDirectory(random);
     IndexWriter w2 = new IndexWriter(dir2, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     Document d3 = new Document();
     d3.add(new Field("f3", "v1", Field.Store.YES, Field.Index.ANALYZED));

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReaderEmptyIndex.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReaderEmptyIndex.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReaderEmptyIndex.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelReaderEmptyIndex.java Thu Aug 12 20:56:23 2010
@@ -48,13 +48,13 @@ public class TestParallelReaderEmptyInde
    */
   public void testEmptyIndex() throws IOException {
     Random random = newRandom();
-    MockRAMDirectory rd1 = new MockRAMDirectory();
+    MockRAMDirectory rd1 = newDirectory(random);
     IndexWriter iw = new IndexWriter(rd1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     iw.close();
 
-    MockRAMDirectory rd2 = new MockRAMDirectory(rd1);
+    MockRAMDirectory rd2 = newDirectory(random, rd1);
 
-    MockRAMDirectory rdOut = new MockRAMDirectory();
+    MockRAMDirectory rdOut = newDirectory(random);
 
     IndexWriter iwOut = new IndexWriter(rdOut, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     ParallelReader pr = new ParallelReader();
@@ -78,8 +78,8 @@ public class TestParallelReaderEmptyInde
    * any exception.
    */
   public void testEmptyIndexWithVectors() throws IOException {
-    MockRAMDirectory rd1 = new MockRAMDirectory();
     Random random = newRandom();
+    MockRAMDirectory rd1 = newDirectory(random);
     {
       IndexWriter iw = new IndexWriter(rd1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
       Document doc = new Document();
@@ -100,7 +100,7 @@ public class TestParallelReaderEmptyInde
       iw.close();
     }
 
-    MockRAMDirectory rd2 = new MockRAMDirectory();
+    MockRAMDirectory rd2 = newDirectory(random);
     {
       IndexWriter iw = new IndexWriter(rd2, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
       Document doc = new Document();
@@ -108,7 +108,7 @@ public class TestParallelReaderEmptyInde
       iw.close();
     }
 
-    MockRAMDirectory rdOut = new MockRAMDirectory();
+    MockRAMDirectory rdOut = newDirectory(random);
 
     IndexWriter iwOut = new IndexWriter(rdOut, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     ParallelReader pr = new ParallelReader();

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestParallelTermEnum.java Thu Aug 12 20:56:23 2010
@@ -32,13 +32,15 @@ import org.apache.lucene.util.Bits;
 public class TestParallelTermEnum extends LuceneTestCase {
     private IndexReader ir1;
     private IndexReader ir2;
-
+    private MockRAMDirectory rd1;
+    private MockRAMDirectory rd2;
+    
     @Override
     protected void setUp() throws Exception {
         super.setUp();
         Document doc;
         Random random = newRandom();
-        MockRAMDirectory rd1 = new MockRAMDirectory();
+        rd1 = newDirectory(random);
         IndexWriter iw1 = new IndexWriter(rd1, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
 
         doc = new Document();
@@ -50,7 +52,7 @@ public class TestParallelTermEnum extend
         iw1.addDocument(doc);
 
         iw1.close();
-        MockRAMDirectory rd2 = new MockRAMDirectory();
+        rd2 = newDirectory(random);
         IndexWriter iw2 = new IndexWriter(rd2, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
 
         doc = new Document();
@@ -71,6 +73,8 @@ public class TestParallelTermEnum extend
     protected void tearDown() throws Exception {
         ir1.close();
         ir2.close();
+        rd1.close();
+        rd2.close();
         super.tearDown();
     }
 

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java Thu Aug 12 20:56:23 2010
@@ -126,7 +126,7 @@ public class TestPayloadProcessorProvide
   private void populateDirs(Random random, Directory[] dirs, boolean multipleCommits)
       throws IOException {
     for (int i = 0; i < dirs.length; i++) {
-      dirs[i] = new MockRAMDirectory();
+      dirs[i] = newDirectory(random);
       populateDocs(random, dirs[i], multipleCommits);
       verifyPayloadExists(dirs[i], "p", new BytesRef("p1"), NUM_DOCS);
       verifyPayloadExists(dirs[i], "p", new BytesRef("p2"), NUM_DOCS);
@@ -179,7 +179,7 @@ public class TestPayloadProcessorProvide
     Directory[] dirs = new Directory[2];
     populateDirs(random, dirs, multipleCommits);
 
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     if (!addToEmptyIndex) {
       populateDocs(random, dir, multipleCommits);
       verifyPayloadExists(dir, "p", new BytesRef("p1"), NUM_DOCS);
@@ -212,6 +212,9 @@ public class TestPayloadProcessorProvide
     numExpectedPayloads = NUM_DOCS * dirs.length
         + (addToEmptyIndex ? 0 : NUM_DOCS);
     verifyPayloadExists(dir, "p", new BytesRef("p2"), numExpectedPayloads);
+    for (Directory d : dirs)
+      d.close();
+    dir.close();
   }
 
   @Test
@@ -237,7 +240,7 @@ public class TestPayloadProcessorProvide
   @Test
   public void testRegularMerges() throws Exception {
     Random random = newRandom();
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     populateDocs(random, dir, true);
     verifyPayloadExists(dir, "p", new BytesRef("p1"), NUM_DOCS);
     verifyPayloadExists(dir, "p", new BytesRef("p2"), NUM_DOCS);
@@ -253,6 +256,7 @@ public class TestPayloadProcessorProvide
 
     verifyPayloadExists(dir, "p", new BytesRef("p1"), 0);
     verifyPayloadExists(dir, "p", new BytesRef("p2"), NUM_DOCS);
+    dir.close();
   }
 
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloads.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloads.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloads.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPayloads.java Thu Aug 12 20:56:23 2010
@@ -101,7 +101,7 @@ public class TestPayloads extends Lucene
     // payload bit in the FieldInfo
     public void testPayloadFieldBit() throws Exception {
         rnd = newRandom();
-        Directory ram = new MockRAMDirectory();
+        Directory ram = newDirectory(rnd);
         PayloadAnalyzer analyzer = new PayloadAnalyzer();
         IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(rnd, TEST_VERSION_CURRENT, analyzer));
         Document d = new Document();
@@ -153,20 +153,22 @@ public class TestPayloads extends Lucene
         assertTrue("Payload field bit should be set.", fi.fieldInfo("f2").storePayloads);
         assertTrue("Payload field bit should be set.", fi.fieldInfo("f3").storePayloads);
         reader.close();
+        ram.close();
     }
 
     // Tests if payloads are correctly stored and loaded using both RamDirectory and FSDirectory
     public void testPayloadsEncoding() throws Exception {
         rnd = newRandom();
         // first perform the test using a RAMDirectory
-        Directory dir = new MockRAMDirectory();
+        Directory dir = newDirectory(rnd);
         performTest(rnd, dir);
-        
+        dir.close();
         // now use a FSDirectory and repeat same test
         File dirName = _TestUtil.getTempDir("test_payloads");
         dir = FSDirectory.open(dirName);
         performTest(rnd, dir);
        _TestUtil.rmDir(dirName);
+        dir.close();
     }
     
     // builds an index with payloads in the given Directory and performs
@@ -489,7 +491,7 @@ public class TestPayloads extends Lucene
         final int numDocs = 50 * RANDOM_MULTIPLIER;
         final ByteArrayPool pool = new ByteArrayPool(numThreads, 5);
         
-        Directory dir = new MockRAMDirectory();
+        Directory dir = newDirectory(rnd);
         final IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(rnd, 
             TEST_VERSION_CURRENT, new MockAnalyzer()));
         final String field = "test";
@@ -535,7 +537,7 @@ public class TestPayloads extends Lucene
           }
         }
         reader.close();
-        
+        dir.close();
         assertEquals(pool.size(), numThreads);
     }
     

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPersistentSnapshotDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPersistentSnapshotDeletionPolicy.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPersistentSnapshotDeletionPolicy.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestPersistentSnapshotDeletionPolicy.java Thu Aug 12 20:56:23 2010
@@ -21,19 +21,32 @@ import static org.junit.Assert.*;
 
 import java.io.IOException;
 import java.util.Map;
-import java.util.Random;
 import java.util.Map.Entry;
 
 import org.apache.lucene.document.Document;
 import org.apache.lucene.index.IndexWriterConfig.OpenMode;
 import org.apache.lucene.store.Directory;
-import org.apache.lucene.store.MockRAMDirectory;
+import org.junit.After;
+import org.junit.Before;
 import org.junit.Test;
 
 public class TestPersistentSnapshotDeletionPolicy extends TestSnapshotDeletionPolicy {
-
   // Keep it a class member so that getDeletionPolicy can use it
-  private Directory snapshotDir = new MockRAMDirectory();
+  private Directory snapshotDir;
+  
+  @Before
+  @Override
+  public void setUp() throws Exception {
+    super.setUp();
+    snapshotDir = newDirectory(random);
+  }
+  
+  @After
+  @Override
+  public void tearDown() throws Exception {
+    snapshotDir.close();
+    super.tearDown();
+  }
   
   @Override
   protected SnapshotDeletionPolicy getDeletionPolicy() throws IOException {
@@ -57,9 +70,8 @@ public class TestPersistentSnapshotDelet
   @Override
   @Test
   public void testExistingSnapshots() throws Exception {
-    Random random = newRandom();
     int numSnapshots = 3;
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     PersistentSnapshotDeletionPolicy psdp = (PersistentSnapshotDeletionPolicy) getDeletionPolicy();
     IndexWriter writer = new IndexWriter(dir, getConfig(random, psdp));
     prepareIndexAndSnapshots(psdp, writer, numSnapshots, "snapshot");
@@ -75,6 +87,7 @@ public class TestPersistentSnapshotDelet
     assertSnapshotExists(dir, psdp, numSnapshots);
     assertEquals(numSnapshots, psdp.getSnapshots().size());
     psdp.close();
+    dir.close();
   }
 
   @Test(expected=IllegalArgumentException.class)
@@ -85,9 +98,10 @@ public class TestPersistentSnapshotDelet
   @Test
   public void testInvalidSnapshotInfos() throws Exception {
     // Add the correct number of documents (1), but without snapshot information
-    IndexWriter writer = new IndexWriter(snapshotDir, getConfig(newRandom(), null));
+    IndexWriter writer = new IndexWriter(snapshotDir, getConfig(random, null));
     writer.addDocument(new Document());
     writer.close();
+    PersistentSnapshotDeletionPolicy dp = null;
     try {
       new PersistentSnapshotDeletionPolicy(
           new KeepOnlyLastCommitDeletionPolicy(), snapshotDir, OpenMode.APPEND,
@@ -100,7 +114,7 @@ public class TestPersistentSnapshotDelet
   @Test
   public void testNoSnapshotInfos() throws Exception {
     // Initialize an empty index in snapshotDir - PSDP should initialize successfully.
-    new IndexWriter(snapshotDir, getConfig(newRandom(), null)).close();
+    new IndexWriter(snapshotDir, getConfig(random, null)).close();
     new PersistentSnapshotDeletionPolicy(
         new KeepOnlyLastCommitDeletionPolicy(), snapshotDir, OpenMode.APPEND,
         TEST_VERSION_CURRENT).close();
@@ -109,7 +123,7 @@ public class TestPersistentSnapshotDelet
   @Test(expected=IllegalStateException.class)
   public void testTooManySnapshotInfos() throws Exception {
     // Write two documents to the snapshots directory - illegal.
-    IndexWriter writer = new IndexWriter(snapshotDir, getConfig(newRandom(), null));
+    IndexWriter writer = new IndexWriter(snapshotDir, getConfig(random, null));
     writer.addDocument(new Document());
     writer.addDocument(new Document());
     writer.close();
@@ -122,9 +136,9 @@ public class TestPersistentSnapshotDelet
 
   @Test
   public void testSnapshotRelease() throws Exception {
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     PersistentSnapshotDeletionPolicy psdp = (PersistentSnapshotDeletionPolicy) getDeletionPolicy();
-    IndexWriter writer = new IndexWriter(dir, getConfig(newRandom(), psdp));
+    IndexWriter writer = new IndexWriter(dir, getConfig(random, psdp));
     prepareIndexAndSnapshots(psdp, writer, 1, "snapshot");
     writer.close();
 
@@ -135,6 +149,8 @@ public class TestPersistentSnapshotDelet
         new KeepOnlyLastCommitDeletionPolicy(), snapshotDir, OpenMode.APPEND,
         TEST_VERSION_CURRENT);
     assertEquals("Should have no snapshots !", 0, psdp.getSnapshots().size());
+    psdp.close();
+    dir.close();
   }
 
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestRollback.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestRollback.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestRollback.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestRollback.java Thu Aug 12 20:56:23 2010
@@ -25,15 +25,14 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Field.Index;
 import org.apache.lucene.document.Field.Store;
 import org.apache.lucene.store.Directory;
-import org.apache.lucene.store.MockRAMDirectory;
 import org.apache.lucene.util.LuceneTestCase;
 
 public class TestRollback extends LuceneTestCase {
 
   // LUCENE-2536
   public void testRollbackIntegrityWithBufferFlush() throws Exception {
-    Directory dir = new MockRAMDirectory();
     Random random = newRandom();
+    Directory dir = newDirectory(random);
     RandomIndexWriter rw = new RandomIndexWriter(random, dir);
     for (int i = 0; i < 5; i++) {
       Document doc = new Document();

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentMerger.java Thu Aug 12 20:56:23 2010
@@ -27,17 +27,18 @@ import org.apache.lucene.util.BytesRef;
 
 import java.io.IOException;
 import java.util.Collection;
+import java.util.Random;
 
 public class TestSegmentMerger extends LuceneTestCase {
   //The variables for the new merged segment
-  private Directory mergedDir = new MockRAMDirectory();
+  private Directory mergedDir;
   private String mergedSegment = "test";
   //First segment to be merged
-  private Directory merge1Dir = new MockRAMDirectory();
+  private Directory merge1Dir;
   private Document doc1 = new Document();
   private SegmentReader reader1 = null;
   //Second Segment to be merged
-  private Directory merge2Dir = new MockRAMDirectory();
+  private Directory merge2Dir;
   private Document doc2 = new Document();
   private SegmentReader reader2 = null;
   
@@ -49,6 +50,10 @@ public class TestSegmentMerger extends L
   @Override
   protected void setUp() throws Exception {
     super.setUp();
+    Random random = newRandom();
+    mergedDir = newDirectory(random);
+    merge1Dir = newDirectory(random);
+    merge2Dir = newDirectory(random);
     DocHelper.setupDoc(doc1);
     SegmentInfo info1 = DocHelper.writeDoc(merge1Dir, doc1);
     DocHelper.setupDoc(doc2);
@@ -56,6 +61,16 @@ public class TestSegmentMerger extends L
     reader1 = SegmentReader.get(true, info1, IndexReader.DEFAULT_TERMS_INDEX_DIVISOR);
     reader2 = SegmentReader.get(true, info2, IndexReader.DEFAULT_TERMS_INDEX_DIVISOR);
   }
+  
+  @Override
+  protected void tearDown() throws Exception {
+    reader1.close();
+    reader2.close();
+    mergedDir.close();
+    merge1Dir.close();
+    merge2Dir.close();
+    super.tearDown();
+  }
 
   public void test() {
     assertTrue(mergedDir != null);
@@ -118,5 +133,6 @@ public class TestSegmentMerger extends L
     }
 
     TestSegmentReader.checkNorms(mergedReader);
+    mergedReader.close();
   }    
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentReader.java Thu Aug 12 20:56:23 2010
@@ -31,7 +31,7 @@ import org.apache.lucene.search.Similari
 import org.apache.lucene.store.MockRAMDirectory;
 
 public class TestSegmentReader extends LuceneTestCase {
-  private MockRAMDirectory dir = new MockRAMDirectory();
+  private MockRAMDirectory dir;
   private Document testDoc = new Document();
   private SegmentReader reader = null;
 
@@ -43,10 +43,18 @@ public class TestSegmentReader extends L
   @Override
   protected void setUp() throws Exception {
     super.setUp();
+    dir = newDirectory(newRandom());
     DocHelper.setupDoc(testDoc);
     SegmentInfo info = DocHelper.writeDoc(dir, testDoc);
     reader = SegmentReader.get(true, info, IndexReader.DEFAULT_TERMS_INDEX_DIVISOR);
   }
+  
+  @Override
+  protected void tearDown() throws Exception {
+    reader.close();
+    dir.close();
+    super.tearDown();
+  }
 
   public void test() {
     assertTrue(dir != null);
@@ -81,6 +89,7 @@ public class TestSegmentReader extends L
     assertTrue(deleteReader.isDeleted(0) == true);
     assertTrue(deleteReader.hasDeletions() == true);
     assertTrue(deleteReader.numDocs() == 0);
+    deleteReader.close();
   }    
   
   public void testGetFieldNameVariations() {

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermDocs.java Thu Aug 12 20:56:23 2010
@@ -18,8 +18,6 @@ package org.apache.lucene.index;
  */
 
 import org.apache.lucene.util.LuceneTestCase;
-import org.apache.lucene.store.MockRAMDirectory;
-import org.apache.lucene.store.MockRAMDirectory;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.document.Document;
@@ -27,11 +25,13 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.util.BytesRef;
 
 import java.io.IOException;
+import java.util.Random;
 
 public class TestSegmentTermDocs extends LuceneTestCase {
   private Document testDoc = new Document();
-  private Directory dir = new MockRAMDirectory();
+  private Directory dir;
   private SegmentInfo info;
+  private Random random;
 
   public TestSegmentTermDocs(String s) {
     super(s);
@@ -40,9 +40,17 @@ public class TestSegmentTermDocs extends
   @Override
   protected void setUp() throws Exception {
     super.setUp();
+    random = newRandom();
+    dir = newDirectory(random);
     DocHelper.setupDoc(testDoc);
     info = DocHelper.writeDoc(dir, testDoc);
   }
+  
+  @Override
+  protected void tearDown() throws Exception {
+    dir.close();
+    super.tearDown();
+  }
 
   public void test() {
     assertTrue(dir != null);
@@ -103,8 +111,8 @@ public class TestSegmentTermDocs extends
   }
 
   public void testSkipTo(int indexDivisor) throws IOException {
-    Directory dir = new MockRAMDirectory();
-    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(newRandom(), TEST_VERSION_CURRENT, new MockAnalyzer()));
+    Directory dir = newDirectory(random);
+    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
     
     Term ta = new Term("content","aaa");
     for(int i = 0; i < 10; i++)
@@ -248,7 +256,6 @@ public class TestSegmentTermDocs extends
   }
   
   public void testIndexDivisor() throws IOException {
-    dir = new MockRAMDirectory();
     testDoc = new Document();
     DocHelper.setupDoc(testDoc);
     DocHelper.writeDoc(dir, testDoc);

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSegmentTermEnum.java Thu Aug 12 20:56:23 2010
@@ -28,16 +28,27 @@ import org.apache.lucene.document.Docume
 import org.apache.lucene.document.Field;
 import org.apache.lucene.index.IndexWriterConfig.OpenMode;
 import org.apache.lucene.store.Directory;
-import org.apache.lucene.store.MockRAMDirectory;
-import org.apache.lucene.store.MockRAMDirectory;
 
 
 public class TestSegmentTermEnum extends LuceneTestCase {
   
-  Directory dir = new MockRAMDirectory();
+  Directory dir;
+  Random random;
+  
+  @Override
+  public void setUp() throws Exception {
+    super.setUp();
+    random = newRandom();
+    dir = newDirectory(random);
+  }
+  
+  @Override
+  public void tearDown() throws Exception {
+    dir.close();
+    super.tearDown();
+  }
 
   public void testTermEnum() throws IOException {
-    Random random = newRandom();
     IndexWriter writer = null;
 
     writer  = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()));
@@ -66,8 +77,7 @@ public class TestSegmentTermEnum extends
 
   public void testPrevTermAtEnd() throws IOException
   {
-    Directory dir = new MockRAMDirectory();
-    IndexWriter writer  = new IndexWriter(dir, newIndexWriterConfig(newRandom(), TEST_VERSION_CURRENT, new MockAnalyzer()).setCodecProvider(_TestUtil.alwaysCodec("Standard")));
+    IndexWriter writer  = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer()).setCodecProvider(_TestUtil.alwaysCodec("Standard")));
     addDoc(writer, "aaa bbb");
     writer.close();
     SegmentReader reader = SegmentReader.getOnlySegmentReader(dir);
@@ -81,6 +91,7 @@ public class TestSegmentTermEnum extends
 
     assertEquals(TermsEnum.SeekStatus.FOUND, terms.seek(ordB));
     assertEquals("bbb", terms.term().utf8ToString());
+    reader.close();
   }
 
   private void verifyDocFreq()
@@ -113,6 +124,7 @@ public class TestSegmentTermEnum extends
     // assert that term is 'bbb'
     assertEquals("bbb", termEnum.term().utf8ToString());
     assertEquals(100, termEnum.docFreq());
+    reader.close();
   }
 
   private void addDoc(IndexWriter writer, String value) throws IOException

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSnapshotDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSnapshotDeletionPolicy.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSnapshotDeletionPolicy.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestSnapshotDeletionPolicy.java Thu Aug 12 20:56:23 2010
@@ -23,6 +23,7 @@ import org.apache.lucene.index.SnapshotD
 import org.apache.lucene.util.LuceneTestCaseJ4;
 import org.apache.lucene.util.ThreadInterruptedException;
 import org.apache.lucene.util._TestUtil;
+import org.junit.Before;
 import org.junit.Test;
 
 //
@@ -31,9 +32,16 @@ import org.junit.Test;
 //
 
 public class TestSnapshotDeletionPolicy extends LuceneTestCaseJ4 {
-	
+  protected Random random;
   public static final String INDEX_PATH = "test.snapshots";
 
+  @Before
+  @Override
+  public void setUp() throws Exception {
+    super.setUp();
+    random = newRandom();
+  }
+  
   protected IndexWriterConfig getConfig(Random random, IndexDeletionPolicy dp) {
     IndexWriterConfig conf = newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer());
     if (dp != null) {
@@ -85,7 +93,6 @@ public class TestSnapshotDeletionPolicy 
   
   @Test
   public void testSnapshotDeletionPolicy() throws Exception {
-    Random random = newRandom();
     File dir = _TestUtil.getTempDir(INDEX_PATH);
     try {
       Directory fsDir = FSDirectory.open(dir);
@@ -95,7 +102,7 @@ public class TestSnapshotDeletionPolicy 
       _TestUtil.rmDir(dir);
     }
 
-    MockRAMDirectory dir2 = new MockRAMDirectory();
+    MockRAMDirectory dir2 = newDirectory(random);
     runTest(random, dir2);
     dir2.close();
   }
@@ -231,10 +238,9 @@ public class TestSnapshotDeletionPolicy 
   public void testBasicSnapshots() throws Exception {
     int numSnapshots = 3;
     SnapshotDeletionPolicy sdp = getDeletionPolicy();
-    Random random = newRandom();
     
     // Create 3 snapshots: snapshot0, snapshot1, snapshot2
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     IndexWriter writer = new IndexWriter(dir, getConfig(random, sdp));
     prepareIndexAndSnapshots(sdp, writer, numSnapshots, "snapshot");
     writer.close();
@@ -259,12 +265,12 @@ public class TestSnapshotDeletionPolicy 
         // expected - snapshot should not exist
       }
     }
+    dir.close();
   }
 
   @Test
   public void testMultiThreadedSnapshotting() throws Exception {
-    Random random = newRandom();
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     final SnapshotDeletionPolicy sdp = getDeletionPolicy();
     final IndexWriter writer = new IndexWriter(dir, getConfig(random, sdp));
 
@@ -303,13 +309,13 @@ public class TestSnapshotDeletionPolicy 
     }
     assertEquals(1, IndexReader.listCommits(dir).size());
     writer.close();
+    dir.close();
   }
 
   @Test
   public void testRollbackToOldSnapshot() throws Exception {
-    Random random = newRandom();
     int numSnapshots = 2;
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     SnapshotDeletionPolicy sdp = getDeletionPolicy();
     IndexWriter writer = new IndexWriter(dir, getConfig(random, sdp));
     prepareIndexAndSnapshots(sdp, writer, numSnapshots, "snapshot");
@@ -325,12 +331,12 @@ public class TestSnapshotDeletionPolicy 
     // but 'snapshot1' files will still exist (need to release snapshot before they can be deleted).
     String segFileName = sdp.getSnapshot("snapshot1").getSegmentsFileName();
     assertTrue("snapshot files should exist in the directory: " + segFileName, dir.fileExists(segFileName));
+    dir.close();
   }
 
   @Test
   public void testReleaseSnapshot() throws Exception {
-    Random random = newRandom();
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     SnapshotDeletionPolicy sdp = getDeletionPolicy();
     IndexWriter writer = new IndexWriter(dir, getConfig(random, sdp));
     prepareIndexAndSnapshots(sdp, writer, 1, "snapshot");
@@ -353,15 +359,15 @@ public class TestSnapshotDeletionPolicy 
     assertNull(sdp.getSnapshots().get(snapId));
     writer.deleteUnusedFiles();
     assertFalse("segments file should not be found in dirctory: " + segFileName, dir.fileExists(segFileName));
+    dir.close();
   }
 
   @Test
   public void testExistingSnapshots() throws Exception {
-    Random random = newRandom();
     // Tests the ability to construct a SDP from existing snapshots, and
     // asserts that those snapshots/commit points are protected.
     int numSnapshots = 3;
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     SnapshotDeletionPolicy sdp = getDeletionPolicy();
     IndexWriter writer = new IndexWriter(dir, getConfig(random, sdp));
     prepareIndexAndSnapshots(sdp, writer, numSnapshots, "snapshot");
@@ -374,12 +380,12 @@ public class TestSnapshotDeletionPolicy 
     writer.deleteUnusedFiles();
     writer.close();
     assertSnapshotExists(dir, sdp, numSnapshots);
+    dir.close();
   }
 
   @Test
   public void testSnapshotLastCommitTwice() throws Exception {
-    Random random = newRandom();
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     SnapshotDeletionPolicy sdp = getDeletionPolicy();
     IndexWriter writer = new IndexWriter(dir, getConfig(random, sdp));
     writer.addDocument(new Document());
@@ -401,14 +407,14 @@ public class TestSnapshotDeletionPolicy 
     checkSnapshotExists(dir, ic2);
     
     writer.close();
+    dir.close();
   }
   
   @Test
   public void testMissingCommits() throws Exception {
-    Random random = newRandom();
     // Tests the behavior of SDP when commits that are given at ctor are missing
     // on onInit().
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(random);
     SnapshotDeletionPolicy sdp = getDeletionPolicy();
     IndexWriter writer = new IndexWriter(dir, getConfig(random, sdp));
     writer.addDocument(new Document());
@@ -436,6 +442,7 @@ public class TestSnapshotDeletionPolicy 
     } catch (IllegalStateException e) {
       // expected.
     }
+    dir.close();
   }
 
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java Thu Aug 12 20:56:23 2010
@@ -169,7 +169,7 @@ public class TestStressIndexing extends 
     RANDOM = newRandom();
 
     // With ConcurrentMergeScheduler, in RAMDir
-    Directory directory = new MockRAMDirectory();
+    Directory directory = newDirectory(RANDOM);
     runStressTest(directory, new ConcurrentMergeScheduler());
     directory.close();
 

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing2.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing2.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing2.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestStressIndexing2.java Thu Aug 12 20:56:23 2010
@@ -64,7 +64,7 @@ public class TestStressIndexing2 extends
   
   public void testRandomIWReader() throws Throwable {
     r = newRandom();
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(r);
     
     // TODO: verify equals using IW.getReader
     DocsAndWriter dw = indexRandomIWReader(5, 3, 100, dir);
@@ -78,9 +78,9 @@ public class TestStressIndexing2 extends
   
   public void testRandom() throws Throwable {
     r = newRandom();
-    Directory dir1 = new MockRAMDirectory();
+    Directory dir1 = newDirectory(r);
     // dir1 = FSDirectory.open("foofoofoo");
-    Directory dir2 = new MockRAMDirectory();
+    Directory dir2 = newDirectory(r);
     // mergeFactor=2; maxBufferedDocs=2; Map docs = indexRandom(1, 3, 2, dir1);
     int maxThreadStates = 1+r.nextInt(10);
     boolean doReaderPooling = r.nextBoolean();
@@ -92,6 +92,8 @@ public class TestStressIndexing2 extends
     // verifyEquals(dir2, dir2, "id");
 
     verifyEquals(dir1, dir2, "id");
+    dir1.close();
+    dir2.close();
   }
 
   public void testMultiConfig() throws Throwable {
@@ -111,13 +113,15 @@ public class TestStressIndexing2 extends
       int nThreads=r.nextInt(5)+1;
       int iter=r.nextInt(5)+1;
       int range=r.nextInt(20)+1;
-      Directory dir1 = new MockRAMDirectory();
-      Directory dir2 = new MockRAMDirectory();
+      Directory dir1 = newDirectory(r);
+      Directory dir2 = newDirectory(r);
       Map<String,Document> docs = indexRandom(nThreads, iter, range, dir1, maxThreadStates, doReaderPooling);
       //System.out.println("TEST: index serial");
       indexSerial(r, docs, dir2);
       //System.out.println("TEST: verify");
       verifyEquals(dir1, dir2, "id");
+      dir1.close();
+      dir2.close();
     }
   }
 

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermVectorsReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermVectorsReader.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermVectorsReader.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermVectorsReader.java Thu Aug 12 20:56:23 2010
@@ -22,6 +22,7 @@ import java.io.Reader;
 import java.util.Arrays;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.Random;
 import java.util.SortedSet;
 
 import org.apache.lucene.analysis.Analyzer;
@@ -43,7 +44,7 @@ public class TestTermVectorsReader exten
   private String[] testTerms = {"this", "is", "a", "test"};
   private int[][] positions = new int[testTerms.length][];
   private TermVectorOffsetInfo[][] offsets = new TermVectorOffsetInfo[testTerms.length][];
-  private MockRAMDirectory dir = new MockRAMDirectory();
+  private MockRAMDirectory dir;
   private String seg;
   private FieldInfos fieldInfos = new FieldInfos();
   private static int TERM_FREQ = 3;
@@ -93,7 +94,9 @@ public class TestTermVectorsReader exten
     }
     Arrays.sort(tokens);
 
-    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(newRandom(), TEST_VERSION_CURRENT, new MyAnalyzer()).setMaxBufferedDocs(-1));
+    Random random = newRandom();
+    dir = newDirectory(random);
+    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MyAnalyzer()).setMaxBufferedDocs(-1));
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setUseCompoundFile(false);
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setUseCompoundDocStore(false);
     ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(10);
@@ -122,6 +125,12 @@ public class TestTermVectorsReader exten
 
     fieldInfos = new FieldInfos(dir, IndexFileNames.segmentFileName(seg, "", IndexFileNames.FIELD_INFOS_EXTENSION));
   }
+  
+  @Override
+  protected void tearDown() throws Exception {
+    dir.close();
+    super.tearDown();
+  }
 
   private class MyTokenStream extends TokenStream {
     int tokenUpto;
@@ -182,6 +191,7 @@ public class TestTermVectorsReader exten
         assertTrue(term.equals(testTerms[i]));
       }
     }
+    reader.close();
   }
 
   public void testPositionReader() throws IOException {
@@ -224,6 +234,7 @@ public class TestTermVectorsReader exten
       //System.out.println("Term: " + term);
       assertTrue(term.equals(testTerms[i]));
     }
+    reader.close();
   }
 
   public void testOffsetReader() throws IOException {
@@ -252,6 +263,7 @@ public class TestTermVectorsReader exten
         assertTrue(termVectorOffsetInfo.equals(offsets[i][j]));
       }
     }
+    reader.close();
   }
 
   public void testMapper() throws IOException {
@@ -366,37 +378,45 @@ public class TestTermVectorsReader exten
     assertEquals(0, docNumAwareMapper.getDocumentNumber());
 
     ir.close();
-
+    reader.close();
   }
 
 
   /**
    * Make sure exceptions and bad params are handled appropriately
    */
-  public void testBadParams() {
+  public void testBadParams() throws IOException {
+    TermVectorsReader reader = null;
     try {
-      TermVectorsReader reader = new TermVectorsReader(dir, seg, fieldInfos);
+      reader = new TermVectorsReader(dir, seg, fieldInfos);
       //Bad document number, good field number
       reader.get(50, testFields[0]);
       fail();
     } catch (IOException e) {
       // expected exception
+    } finally {
+      reader.close();
     }
     try {
-      TermVectorsReader reader = new TermVectorsReader(dir, seg, fieldInfos);
+      reader = new TermVectorsReader(dir, seg, fieldInfos);
       //Bad document number, no field
       reader.get(50);
       fail();
     } catch (IOException e) {
       // expected exception
+    } finally {
+      reader.close();
     }
     try {
-      TermVectorsReader reader = new TermVectorsReader(dir, seg, fieldInfos);
+      reader = new TermVectorsReader(dir, seg, fieldInfos);
       //good document number, bad field number
       TermFreqVector vector = reader.get(0, "f50");
       assertTrue(vector == null);
+      reader.close();
     } catch (IOException e) {
       fail();
+    } finally {
+      reader.close();
     }
   }
 

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTermdocPerf.java Thu Aug 12 20:56:23 2010
@@ -57,8 +57,7 @@ class RepeatingTokenStream extends Token
 
 public class TestTermdocPerf extends LuceneTestCase {
 
-  void addDocs(Directory dir, final int ndocs, String field, final String val, final int maxTF, final float percentDocs) throws IOException {
-    final Random random = newRandom();
+  void addDocs(final Random random, Directory dir, final int ndocs, String field, final String val, final int maxTF, final float percentDocs) throws IOException {
     final RepeatingTokenStream ts = new RepeatingTokenStream(val);
 
     Analyzer analyzer = new Analyzer() {
@@ -87,10 +86,11 @@ public class TestTermdocPerf extends Luc
 
 
   public int doTest(int iter, int ndocs, int maxTF, float percentDocs) throws IOException {
-    Directory dir = new MockRAMDirectory();
+    Random random = newRandom();
+    Directory dir = newDirectory(random);
 
     long start = System.currentTimeMillis();
-    addDocs(dir, ndocs, "foo", "val", maxTF, percentDocs);
+    addDocs(random, dir, ndocs, "foo", "val", maxTF, percentDocs);
     long end = System.currentTimeMillis();
     if (VERBOSE) System.out.println("milliseconds for creation of " + ndocs + " docs = " + (end-start));
 

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java Thu Aug 12 20:56:23 2010
@@ -139,7 +139,7 @@ public class TestThreadedOptimize extend
   */
   public void testThreadedOptimize() throws Exception {
     Random random = newRandom();
-    Directory directory = new MockRAMDirectory();
+    Directory directory = newDirectory(random);
     runTest(random, directory, new SerialMergeScheduler());
     runTest(random, directory, new ConcurrentMergeScheduler());
     directory.close();

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactionRollback.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactionRollback.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactionRollback.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactionRollback.java Thu Aug 12 20:56:23 2010
@@ -124,7 +124,7 @@ public class TestTransactionRollback ext
   @Override
   protected void setUp() throws Exception {
     super.setUp();
-    dir = new MockRAMDirectory();
+    dir = newDirectory(random);
 		random = newRandom();
     //Build index, of records 1 to 100, committing after each batch of 10
     IndexDeletionPolicy sdp=new KeepAllDeletionPolicy();
@@ -143,6 +143,12 @@ public class TestTransactionRollback ext
 
     w.close();
   }
+  
+  @Override
+  protected void tearDown() throws Exception {
+    dir.close();
+    super.tearDown();
+  }
 
   // Rolls back to previous commit point
   class RollbackDeletionPolicy implements IndexDeletionPolicy {

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactions.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactions.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactions.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestTransactions.java Thu Aug 12 20:56:23 2010
@@ -195,8 +195,8 @@ public class TestTransactions extends Lu
 
   public void testTransactions() throws Throwable {
     RANDOM = newRandom();
-    MockRAMDirectory dir1 = new MockRAMDirectory();
-    MockRAMDirectory dir2 = new MockRAMDirectory();
+    MockRAMDirectory dir1 = newDirectory(RANDOM);
+    MockRAMDirectory dir2 = newDirectory(RANDOM);
     dir1.setPreventDoubleWrite(false);
     dir2.setPreventDoubleWrite(false);
     dir1.failOn(new RandomFailure());
@@ -225,5 +225,7 @@ public class TestTransactions extends Lu
 
     for(int i=0;i<numThread;i++)
       assertTrue(!threads[i].failed);
+    dir1.close();
+    dir2.close();
   }
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/intblock/TestIntBlockCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/intblock/TestIntBlockCodec.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/intblock/TestIntBlockCodec.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/intblock/TestIntBlockCodec.java Thu Aug 12 20:56:23 2010
@@ -25,7 +25,7 @@ import org.apache.lucene.index.codecs.mo
 public class TestIntBlockCodec extends LuceneTestCase {
 
   public void testSimpleIntBlocks() throws Exception {
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(newRandom());
 
     IntStreamFactory f = new MockFixedIntBlockCodec(128).getIntFactory();
 
@@ -47,7 +47,7 @@ public class TestIntBlockCodec extends L
   }
 
   public void testEmptySimpleIntBlocks() throws Exception {
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(newRandom());
 
     IntStreamFactory f = new MockFixedIntBlockCodec(128).getIntFactory();
     IntIndexOutput out = f.createOutput(dir, "test");

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/preflex/TestSurrogates.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/preflex/TestSurrogates.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/preflex/TestSurrogates.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/codecs/preflex/TestSurrogates.java Thu Aug 12 20:56:23 2010
@@ -274,7 +274,7 @@ public class TestSurrogates extends Luce
   public void testSurrogatesOrder() throws Exception {
     Random r = newRandom();
 
-    Directory dir = new MockRAMDirectory();
+    Directory dir = newDirectory(r);
     RandomIndexWriter w = new RandomIndexWriter(r,
                                                 dir,
                                                 newIndexWriterConfig(r, TEST_VERSION_CURRENT,
@@ -338,5 +338,7 @@ public class TestSurrogates extends Luce
     doTestSeekDoesNotExist(r, numField, fieldTerms, fieldTermsArray, reader);
 
     reader.close();
+    w.close();
+    dir.close();
   }
 }

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestMultiFieldQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestMultiFieldQueryParser.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestMultiFieldQueryParser.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestMultiFieldQueryParser.java Thu Aug 12 20:56:23 2010
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.io.Reader;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Random;
 
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.TokenStream;
@@ -283,8 +284,9 @@ public class TestMultiFieldQueryParser e
 
   public void testStopWordSearching() throws Exception {
     Analyzer analyzer = new MockAnalyzer();
-    Directory ramDir = new MockRAMDirectory();
-    IndexWriter iw =  new IndexWriter(ramDir, new IndexWriterConfig(TEST_VERSION_CURRENT, analyzer));
+    Random random = newRandom();
+    Directory ramDir = newDirectory(random);
+    IndexWriter iw =  new IndexWriter(ramDir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, analyzer));
     Document doc = new Document();
     doc.add(new Field("body", "blah the footest blah", Field.Store.NO, Field.Index.ANALYZED));
     iw.addDocument(doc);
@@ -298,6 +300,7 @@ public class TestMultiFieldQueryParser e
     ScoreDoc[] hits = is.search(q, null, 1000).scoreDocs;
     assertEquals(1, hits.length);
     is.close();
+    ramDir.close();
   }
   
   /**

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java Thu Aug 12 20:56:23 2010
@@ -27,6 +27,7 @@ import java.util.Date;
 import java.util.GregorianCalendar;
 import java.util.HashSet;
 import java.util.Locale;
+import java.util.Random;
 
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.MockAnalyzer;
@@ -569,9 +570,9 @@ public class TestQueryParser extends Loc
   }
     
   public void testFarsiRangeCollating() throws Exception {
-    
-    MockRAMDirectory ramDir = new MockRAMDirectory();
-    IndexWriter iw = new IndexWriter(ramDir, new IndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(MockTokenizer.WHITESPACE, false)));
+    Random random = newRandom();
+    MockRAMDirectory ramDir = newDirectory(random);
+    IndexWriter iw = new IndexWriter(ramDir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer(MockTokenizer.WHITESPACE, false)));
     Document doc = new Document();
     doc.add(new Field("content","\u0633\u0627\u0628", 
                       Field.Store.YES, Field.Index.NOT_ANALYZED));
@@ -610,6 +611,7 @@ public class TestQueryParser extends Loc
     assertEquals("The index Term should be included.", 1, result.length);
 
     is.close();
+    ramDir.close();
   }
   
   private String escapeDateString(String s) {
@@ -978,8 +980,9 @@ public class TestQueryParser extends Loc
   }
 
   public void testLocalDateFormat() throws IOException, ParseException {
-    MockRAMDirectory ramDir = new MockRAMDirectory();
-    IndexWriter iw = new IndexWriter(ramDir, new IndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(MockTokenizer.WHITESPACE, false)));
+    Random random = newRandom();
+    MockRAMDirectory ramDir = newDirectory(random);
+    IndexWriter iw = new IndexWriter(ramDir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, new MockAnalyzer(MockTokenizer.WHITESPACE, false)));
     addDateDoc("a", 2005, 12, 2, 10, 15, 33, iw);
     addDateDoc("b", 2005, 12, 4, 22, 15, 00, iw);
     iw.close();
@@ -991,6 +994,7 @@ public class TestQueryParser extends Loc
     assertHits(1, "{12/1/2005 TO 12/4/2005}", is);
     assertHits(0, "{12/3/2005 TO 12/4/2005}", is);
     is.close();
+    ramDir.close();
   }
 
   public void testStarParsing() throws Exception {
@@ -1124,9 +1128,10 @@ public class TestQueryParser extends Loc
   // enableStopPositionIncr & QueryParser's enablePosIncr
   // "match"
   public void testPositionIncrements() throws Exception {
-    Directory dir = new MockRAMDirectory();
+    Random random = newRandom();
+    Directory dir = newDirectory(random);
     Analyzer a = new MockAnalyzer(MockTokenizer.SIMPLE, true, MockTokenFilter.ENGLISH_STOPSET, true);
-    IndexWriter w = new IndexWriter(dir, new IndexWriterConfig(TEST_VERSION_CURRENT, a));
+    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(random, TEST_VERSION_CURRENT, a));
     Document doc = new Document();
     doc.add(new Field("f", "the wizard of ozzy", Field.Store.NO, Field.Index.ANALYZED));
     w.addDocument(doc);

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/BaseTestRangeFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/BaseTestRangeFilter.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/BaseTestRangeFilter.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/BaseTestRangeFilter.java Thu Aug 12 20:56:23 2010
@@ -34,7 +34,7 @@ public class BaseTestRangeFilter extends
   public static final boolean F = false;
   public static final boolean T = true;
   
-  protected Random rand;
+  protected Random rand = newRandom();
   
   /**
    * Collation interacts badly with hyphens -- collation produces different
@@ -46,20 +46,23 @@ public class BaseTestRangeFilter extends
     int maxR;
     int minR;
     boolean allowNegativeRandomInts;
-    MockRAMDirectory index = new MockRAMDirectory();
+    MockRAMDirectory index;
     
     TestIndex(int minR, int maxR, boolean allowNegativeRandomInts) {
       this.minR = minR;
       this.maxR = maxR;
       this.allowNegativeRandomInts = allowNegativeRandomInts;
+      try {
+        index = newDirectory(rand);
+      } catch (IOException e) { throw new RuntimeException(e); }
     }
   }
   
   IndexReader signedIndexReader;
   IndexReader unsignedIndexReader;
   
-  TestIndex signedIndexDir = new TestIndex(Integer.MAX_VALUE, Integer.MIN_VALUE, true);
-  TestIndex unsignedIndexDir = new TestIndex(Integer.MAX_VALUE, 0, false);
+  TestIndex signedIndexDir;
+  TestIndex unsignedIndexDir;
   
   int minId = 0;
   int maxId = 10000;
@@ -88,7 +91,8 @@ public class BaseTestRangeFilter extends
    
   protected void setUp() throws Exception {
     super.setUp();
-    rand = newRandom();
+    signedIndexDir = new TestIndex(Integer.MAX_VALUE, Integer.MIN_VALUE, true);
+    unsignedIndexDir = new TestIndex(Integer.MAX_VALUE, 0, false);
     signedIndexReader = build(rand, signedIndexDir);
     unsignedIndexReader = build(rand, unsignedIndexDir);
   }
@@ -96,6 +100,8 @@ public class BaseTestRangeFilter extends
   protected void tearDown() throws Exception {
     signedIndexReader.close();
     unsignedIndexReader.close();
+    signedIndexDir.index.close();
+    unsignedIndexDir.index.close();
     super.tearDown();
   }
   

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java Thu Aug 12 20:56:23 2010
@@ -43,7 +43,7 @@ public class TestAutomatonQuery extends 
   public void setUp() throws Exception {
     super.setUp();
     Random random = newRandom();
-    directory = new MockRAMDirectory();
+    directory = newDirectory(random);
     RandomIndexWriter writer = new RandomIndexWriter(random, directory);
     Document doc = new Document();
     Field titleField = new Field("title", "some title", Field.Store.NO,

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQueryUnicode.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQueryUnicode.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQueryUnicode.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestAutomatonQueryUnicode.java Thu Aug 12 20:56:23 2010
@@ -46,7 +46,7 @@ public class TestAutomatonQueryUnicode e
   public void setUp() throws Exception {
     super.setUp();
     Random random = newRandom();
-    directory = new MockRAMDirectory();
+    directory = newDirectory(random);
     RandomIndexWriter writer = new RandomIndexWriter(random, directory);
     Document doc = new Document();
     Field titleField = new Field("title", "some title", Field.Store.NO,

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBoolean2.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBoolean2.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBoolean2.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBoolean2.java Thu Aug 12 20:56:23 2010
@@ -46,6 +46,7 @@ public class TestBoolean2 extends Lucene
   private static int NUM_EXTRA_DOCS = 6000;
 
   public static final String field = "field";
+  private Directory directory;
   private Directory dir2;
   private int mulFactor;
 
@@ -53,7 +54,7 @@ public class TestBoolean2 extends Lucene
   protected void setUp() throws Exception {
     super.setUp();
     rnd = newRandom();
-    MockRAMDirectory directory = new MockRAMDirectory();
+    directory = newDirectory(rnd);
     RandomIndexWriter writer= new RandomIndexWriter(rnd, directory);
     for (int i = 0; i < docFields.length; i++) {
       Document doc = new Document();
@@ -96,8 +97,10 @@ public class TestBoolean2 extends Lucene
 
   @Override
   protected void tearDown() throws Exception {
+    searcher.close();
     reader.close();
     dir2.close();
+    directory.close();
     super.tearDown();
   }
 

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanMinShouldMatch.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanMinShouldMatch.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanMinShouldMatch.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanMinShouldMatch.java Thu Aug 12 20:56:23 2010
@@ -55,7 +55,7 @@ public class TestBooleanMinShouldMatch e
             "X       4 5 6"
         };
 
-        index = new MockRAMDirectory();
+        index = newDirectory(rnd);
         RandomIndexWriter w = new RandomIndexWriter(rnd, index);
 
         for (int i = 0; i < data.length; i++) {

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanOr.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanOr.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanOr.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanOr.java Thu Aug 12 20:56:23 2010
@@ -137,9 +137,10 @@ public class TestBooleanOr extends Lucen
     super.setUp();
 
     //
-    dir = new MockRAMDirectory();
-
     Random random = newRandom();
+    dir = newDirectory(random);
+
+
     //
     RandomIndexWriter writer = new RandomIndexWriter(random, dir);
 

Modified: lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanPrefixQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanPrefixQuery.java?rev=984968&r1=984967&r2=984968&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanPrefixQuery.java (original)
+++ lucene/dev/trunk/lucene/src/test/org/apache/lucene/search/TestBooleanPrefixQuery.java Thu Aug 12 20:56:23 2010
@@ -17,6 +17,8 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
+import java.util.Random;
+
 import org.apache.lucene.util.LuceneTestCase;
 import junit.framework.Test;
 import junit.framework.TestSuite;
@@ -65,7 +67,8 @@ public class TestBooleanPrefixQuery exte
   }
 
   public void testMethod() throws Exception {
-    MockRAMDirectory directory = new MockRAMDirectory();
+    Random random = newRandom();
+    MockRAMDirectory directory = newDirectory(random);
 
     String[] categories = new String[]{"food",
                                        "foodanddrink",
@@ -75,7 +78,7 @@ public class TestBooleanPrefixQuery exte
     Query rw1 = null;
     Query rw2 = null;
     IndexReader reader = null;
-    RandomIndexWriter writer = new RandomIndexWriter(newRandom(), directory);
+    RandomIndexWriter writer = new RandomIndexWriter(random, directory);
     for (int i = 0; i < categories.length; i++) {
       Document doc = new Document();
       doc.add(new Field("category", categories[i], Field.Store.YES, Field.Index.NOT_ANALYZED));