[hibernate-commits] Hibernate SVN: r18480 - in search/trunk/src/test/java/org/hibernate/search/test: batchindexing and 5 other directories.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Sat Jan 9 10:49:30 EST 2010


Author: sannegrinovero
Date: 2010-01-09 10:49:30 -0500 (Sat, 09 Jan 2010)
New Revision: 18480

Modified:
   search/trunk/src/test/java/org/hibernate/search/test/SearchTestCase.java
   search/trunk/src/test/java/org/hibernate/search/test/batchindexing/IndexingGeneratedCorpusTest.java
   search/trunk/src/test/java/org/hibernate/search/test/configuration/ShardsConfigurationTest.java
   search/trunk/src/test/java/org/hibernate/search/test/directoryProvider/CustomLockProviderTest.java
   search/trunk/src/test/java/org/hibernate/search/test/shards/DirectoryProviderForQueryTest.java
   search/trunk/src/test/java/org/hibernate/search/test/similarity/IllegalSimilarityConfigurationTest.java
   search/trunk/src/test/java/org/hibernate/search/test/util/FullTextSessionBuilder.java
Log:
HSEARCH-408 more tests cleanup: remove unneeded file operations, prevent some SessionFactories from leaking

Modified: search/trunk/src/test/java/org/hibernate/search/test/SearchTestCase.java
===================================================================
--- search/trunk/src/test/java/org/hibernate/search/test/SearchTestCase.java	2010-01-09 15:23:37 UTC (rev 18479)
+++ search/trunk/src/test/java/org/hibernate/search/test/SearchTestCase.java	2010-01-09 15:49:30 UTC (rev 18480)
@@ -90,7 +90,7 @@
 		PostInsertEventListener[] listeners = ( ( SessionFactoryImpl ) getSessions() ).getEventListeners()
 				.getPostInsertEventListeners();
 		FullTextIndexEventListener listener = null;
-		//FIXME this sucks since we mandante the event listener use
+		//FIXME this sucks since we mandate the event listener use
 		for ( PostInsertEventListener candidate : listeners ) {
 			if ( candidate instanceof FullTextIndexEventListener ) {
 				listener = ( FullTextIndexEventListener ) candidate;

Modified: search/trunk/src/test/java/org/hibernate/search/test/batchindexing/IndexingGeneratedCorpusTest.java
===================================================================
--- search/trunk/src/test/java/org/hibernate/search/test/batchindexing/IndexingGeneratedCorpusTest.java	2010-01-09 15:23:37 UTC (rev 18479)
+++ search/trunk/src/test/java/org/hibernate/search/test/batchindexing/IndexingGeneratedCorpusTest.java	2010-01-09 15:49:30 UTC (rev 18480)
@@ -66,6 +66,11 @@
 		createMany( Dvd.class, DVD_NUM );
 		createMany( AncientBook.class, ANCIENTBOOK_NUM );
 	}
+	
+	@Override
+	protected void tearDown() {
+		builder.close();
+	}
 
 	private void createMany(Class<? extends TitleAble> entityType, int amount ) throws InstantiationException, IllegalAccessException {
 		FullTextSession fullTextSession = builder.openFullTextSession();

Modified: search/trunk/src/test/java/org/hibernate/search/test/configuration/ShardsConfigurationTest.java
===================================================================
--- search/trunk/src/test/java/org/hibernate/search/test/configuration/ShardsConfigurationTest.java	2010-01-09 15:23:37 UTC (rev 18479)
+++ search/trunk/src/test/java/org/hibernate/search/test/configuration/ShardsConfigurationTest.java	2010-01-09 15:49:30 UTC (rev 18480)
@@ -109,6 +109,11 @@
 		assertValueIsSet( Document.class, 1, BATCH, MAX_MERGE_DOCS, 11 );
 	}
 	
+	@Override
+	protected void ensureIndexesAreEmpty() {
+		// skips index emptying to prevent a problem with UselessShardingStrategy
+	}
+	
 	protected Class[] getMappings() {
 		return new Class[] {
 				Book.class,

Modified: search/trunk/src/test/java/org/hibernate/search/test/directoryProvider/CustomLockProviderTest.java
===================================================================
--- search/trunk/src/test/java/org/hibernate/search/test/directoryProvider/CustomLockProviderTest.java	2010-01-09 15:23:37 UTC (rev 18479)
+++ search/trunk/src/test/java/org/hibernate/search/test/directoryProvider/CustomLockProviderTest.java	2010-01-09 15:49:30 UTC (rev 18480)
@@ -26,7 +26,6 @@
 
 import junit.framework.TestCase;
 
-import org.hibernate.search.event.ContextHolder;
 import org.hibernate.search.test.util.FullTextSessionBuilder;
 
 /**

Modified: search/trunk/src/test/java/org/hibernate/search/test/shards/DirectoryProviderForQueryTest.java
===================================================================
--- search/trunk/src/test/java/org/hibernate/search/test/shards/DirectoryProviderForQueryTest.java	2010-01-09 15:23:37 UTC (rev 18479)
+++ search/trunk/src/test/java/org/hibernate/search/test/shards/DirectoryProviderForQueryTest.java	2010-01-09 15:49:30 UTC (rev 18480)
@@ -24,35 +24,25 @@
  */
 package org.hibernate.search.test.shards;
 
-import java.io.File;
 import java.util.List;
 
 import org.apache.lucene.analysis.StopAnalyzer;
 import org.apache.lucene.queryParser.QueryParser;
-
 import org.hibernate.Session;
 import org.hibernate.Transaction;
 import org.hibernate.cfg.Configuration;
-import org.hibernate.search.Environment;
 import org.hibernate.search.FullTextQuery;
 import org.hibernate.search.FullTextSession;
 import org.hibernate.search.Search;
-import org.hibernate.search.store.FSDirectoryProvider;
 import org.hibernate.search.test.SearchTestCase;
-import org.hibernate.search.util.FileHelper;
 
 /**
  * @author Chase Seibert
  */
 public class DirectoryProviderForQueryTest extends SearchTestCase {
 
-
 	protected void configure(Configuration cfg) {
 		super.configure( cfg );
-		cfg.setProperty( "hibernate.search.default.directory_provider", FSDirectoryProvider.class.getName() );
-		File sub = getBaseIndexDir();
-		cfg.setProperty( "hibernate.search.default.indexBase", sub.getAbsolutePath() );
-		cfg.setProperty( Environment.ANALYZER_CLASS, StopAnalyzer.class.getName() );
 		// this strategy allows the caller to use a pre-search filter to define which index to hit	
 		cfg.setProperty( "hibernate.search.Email.sharding_strategy", SpecificShardingStrategy.class.getCanonicalName() );		
 		cfg.setProperty( "hibernate.search.Email.sharding_strategy.nbr_of_shards", "2" );
@@ -97,29 +87,11 @@
 		s.close();
 	}
 
-	protected void setUp() throws Exception {
-		File sub = getBaseIndexDir();
-		sub.mkdir();
-		File[] files = sub.listFiles();
-		for (File file : files) {
-			if ( file.isDirectory() ) {
-				FileHelper.delete( file );
-			}
-		}
-		super.setUp(); //we need a fresh session factory each time for index set up
-		buildSessionFactory( getMappings(), getAnnotatedPackages(), getXmlFiles() );
-	}
-
-	protected void tearDown() throws Exception {
-		super.tearDown();
-		File sub = getBaseIndexDir();
-		FileHelper.delete( sub );
-	}
-
 	@SuppressWarnings("unchecked")
 	protected Class[] getMappings() {
 		return new Class[] {
 				Email.class
 		};
 	}
+	
 }

Modified: search/trunk/src/test/java/org/hibernate/search/test/similarity/IllegalSimilarityConfigurationTest.java
===================================================================
--- search/trunk/src/test/java/org/hibernate/search/test/similarity/IllegalSimilarityConfigurationTest.java	2010-01-09 15:23:37 UTC (rev 18479)
+++ search/trunk/src/test/java/org/hibernate/search/test/similarity/IllegalSimilarityConfigurationTest.java	2010-01-09 15:49:30 UTC (rev 18480)
@@ -32,68 +32,88 @@
 
 	public void testValidConfiguration() {
 		boolean configurationIsLegal = true;
+		FullTextSessionBuilder builder = null;
 		try {
-			FullTextSessionBuilder builder = new FullTextSessionBuilder()
+			builder = new FullTextSessionBuilder()
 					.addAnnotatedClass(Can.class)
 					.addAnnotatedClass(Trash.class).build();
-			builder.close();
 		} catch (Exception e) {
 			configurationIsLegal = false;
 		}
+		finally {
+			if (builder!=null)
+				builder.close();
+		}
 		assertTrue( "A valid configuration could not be started.", configurationIsLegal );
 	}
 	
 	public void testInconsistentSimilarityInClassHierarchy() {
 		boolean configurationIsLegal = true;
+		FullTextSessionBuilder builder = null;
 		try {
-			FullTextSessionBuilder builder = new FullTextSessionBuilder()
+			builder = new FullTextSessionBuilder()
 					.addAnnotatedClass( Trash.class )
 					.addAnnotatedClass( LittleTrash.class ).build();
-			builder.close();
 		} catch (Exception e) {
 			configurationIsLegal = false;
 		}
+		finally {
+			if (builder!=null)
+				builder.close();
+		}
 		assertFalse( "Invalid Similarity declared, should have thrown an exception: same similarity"
 				+ " must be used across class hierarchy", configurationIsLegal );
 	}
 	
 	public void testInconsistentSimilarityInClassSharingAnIndex() {
 		boolean configurationIsLegal = true;
+		FullTextSessionBuilder builder = null;
 		try {
-			FullTextSessionBuilder builder = new FullTextSessionBuilder()
+			builder = new FullTextSessionBuilder()
 					.addAnnotatedClass( Trash.class )
 					.addAnnotatedClass( Sink.class ).build();
-			builder.close();
 		} catch (Exception e) {
 			configurationIsLegal = false;
 		}
+		finally {
+			if (builder!=null)
+				builder.close();
+		}
 		assertFalse( "Invalid Similarity declared, should have thrown an exception: two entities"
 				+ "sharing the same index are using a different similarity", configurationIsLegal );
 }
 	
 	public void testImplicitSimilarityInheritanceIsValid() {
 		boolean configurationIsLegal = true;
+		FullTextSessionBuilder builder = null;
 		try {
-			FullTextSessionBuilder builder = new FullTextSessionBuilder()
+			builder = new FullTextSessionBuilder()
 					.addAnnotatedClass( Trash.class )
 					.addAnnotatedClass( ProperTrashExtension.class ).build();
-			builder.close();
 		} catch (Exception e) {
 			configurationIsLegal = false;
 		}
+		finally {
+			if (builder!=null)
+				builder.close();
+		}
 		assertTrue( "Valid configuration could not be built", configurationIsLegal );
 }
 	
 	public void testInvalidToOverrideParentsSimilarity() {
 		boolean configurationIsLegal = true;
+		FullTextSessionBuilder builder = null;
 		try {
-			FullTextSessionBuilder builder = new FullTextSessionBuilder()
+			builder = new FullTextSessionBuilder()
 					.addAnnotatedClass( Can.class )
 					.addAnnotatedClass( SmallerCan.class ).build();
-			builder.close();
 		} catch (Exception e) {
 			configurationIsLegal = false;
 		}
+		finally {
+			if (builder!=null)
+				builder.close();
+		}
 		assertFalse( "Invalid Similarity declared, should have thrown an exception: child entity"
 				+ " is overriding parent's Similarity", configurationIsLegal );
 	}

Modified: search/trunk/src/test/java/org/hibernate/search/test/util/FullTextSessionBuilder.java
===================================================================
--- search/trunk/src/test/java/org/hibernate/search/test/util/FullTextSessionBuilder.java	2010-01-09 15:23:37 UTC (rev 18479)
+++ search/trunk/src/test/java/org/hibernate/search/test/util/FullTextSessionBuilder.java	2010-01-09 15:49:30 UTC (rev 18480)
@@ -54,6 +54,7 @@
 
 	private AnnotationConfiguration cfg;
 	private SessionFactory sessionFactory;
+	private boolean usingFileSystem = false;
 	
 	static {
 		String buildDir = System.getProperty( "build.dir" );
@@ -89,10 +90,12 @@
 		 if ( use ) {
 			 cfg.setProperty( "hibernate.search.default.directory_provider",
 						RAMDirectoryProvider.class.getName() );
+			 usingFileSystem = false;
 		 }
 		 else {
 			 cfg.setProperty( "hibernate.search.default.directory_provider",
 						FSDirectoryProvider.class.getName() );
+			 usingFileSystem = true;
 		 }
 		return this;
 	}
@@ -138,7 +141,9 @@
 			throw new java.lang.IllegalStateException( "sessionFactory not yet built" );
 		}
 		sessionFactory.close();
-		FileHelper.delete( indexDir );
+		if ( usingFileSystem ) {
+			FileHelper.delete( indexDir );
+		}
 		sessionFactory = null;
 	}
 



More information about the hibernate-commits mailing list