/** * @param configuration The test configuration to use when initializing. * @see ImmutableTestConfiguration */ protected void init(TestConfiguration configuration) { if ( testResourceManager == null ) { testResourceManager = new DefaultTestResourceManager( configuration, this.getClass() ); } testResourceManager.openSessionFactory(); }
/** * Close all open resources (streams, sessions, session factories, ...) * @throws Exception */ public void close() { handleUnclosedResources(); closeSessionFactory(); }
@Before public void setUp() throws Exception { for ( int i = 0 ; i < getExpectedNumberOfNodes() ; ++i ) { DefaultTestResourceManager resourceManager = new DefaultTestResourceManager( this, getClass() ); resourceManagers.add( resourceManager ); resourceManager.openSessionFactory(); if ( alreadySelectedBaseIndexDir == null ) { // Set the base index dir to the dir selected for the first search factory this.alreadySelectedBaseIndexDir = resourceManager.getBaseIndexDir().toAbsolutePath().toString(); } } }
protected SessionFactory getSlaveSessionFactory() { return slaveResources.getSessionFactory(); }
protected Session getSlaveSession() { return slaveResources.openSession(); }
@Override public Path getBaseIndexDir() { return getTestResourceManager().getBaseIndexDir(); }
@Override public final void openSessionFactory() { getTestResourceManager().openSessionFactory(); }
@Override public final void closeSessionFactory() { getTestResourceManager().closeSessionFactory(); }
private synchronized DefaultTestResourceManager getTestResourceManager() { if ( testResourceManager == null ) { testResourceManager = new DefaultTestResourceManager( this, this.getClass() ); } return testResourceManager; }
public DefaultTestResourceManager(TestConfiguration test, Class<?> currentTestModuleClass) { this.test = test; this.baseIndexDir = createBaseIndexDir( currentTestModuleClass ); }
@Override public void openSessionFactory() { if ( sessionFactory == null ) { sessionFactory = buildSessionFactory(); } else { throw new IllegalStateException( "there should be no SessionFactory initialized at this point" ); } }
@Override public Session openSession() { if ( session != null && session.isOpen() ) { throw new IllegalStateException( "Previously opened Session wasn't closed!" ); } session = getSessionFactory().openSession(); return session; }
@Override public final Session openSession() { return getTestResourceManager().openSession(); }
@Override public void ensureIndexesAreEmpty() throws IOException { FileHelper.delete( getBaseIndexDir() ); }
@Before public void setUp() throws Exception { getTestResourceManager().openSessionFactory(); }
@Override public void tearDown() throws Exception { //close session factories if ( slaveResources != null ) { slaveResources.closeSessionFactory(); slaveResources = null; } super.tearDown(); }
private void buildSlaveSessionFactory() throws Exception { if ( slaveResources != null ) { throw new IllegalStateException( "Slave SessionFactory already created" ); } HashMap<String, Object> slaveConfiguration = new HashMap<String,Object>(); configureSlave( slaveConfiguration ); TestConfiguration slaveTestConfiguration = new ImmutableTestConfiguration( slaveConfiguration, getAnnotatedClasses() ); slaveResources = new DefaultTestResourceManager( slaveTestConfiguration, this.getClass() ); slaveResources.openSessionFactory(); }
@After public void tearDown() throws Exception { for ( DefaultTestResourceManager resourceManager : resourceManagers ) { resourceManager.close(); } /* * Only do this after closing every resource manager, * so as not to delete files that are still being used. */ for ( DefaultTestResourceManager resourceManager : resourceManagers ) { resourceManager.cleanUp(); } }
@Override public final SessionFactory getSessionFactory() { return getTestResourceManager().getSessionFactory(); }