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;
}