Author: stliu
Date: 2010-07-30 02:11:46 -0400 (Fri, 30 Jul 2010)
New Revision: 20080
Modified:
entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/PackagedEntityManagerTest.java
Log:
JBPAPP-4760 clean db tables after each test
Modified:
entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/PackagedEntityManagerTest.java
===================================================================
---
entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/PackagedEntityManagerTest.java 2010-07-30
03:39:45 UTC (rev 20079)
+++
entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/PackagedEntityManagerTest.java 2010-07-30
06:11:46 UTC (rev 20080)
@@ -37,20 +37,10 @@
* @author Gavin King
*/
@SuppressWarnings("unchecked")
-public class PackagedEntityManagerTest extends TestCase {
+public class PackagedEntityManagerTest extends junit.framework.TestCase {
- public Class[] getAnnotatedClasses() {
- return new Class[] {Item.class,Distributor.class
- };
- }
-
- @Override
- protected void buildConfiguration() throws Exception {
- super.buildConfiguration();
- factory = Persistence.createEntityManagerFactory( "manager1" );
- }
-
public void testDefaultPar() throws Exception {
+
EntityManagerFactory emf = Persistence.createEntityManagerFactory(
"defaultpar", new HashMap() );
EntityManager em = emf.createEntityManager();
ApplicationServer as = new ApplicationServer();
@@ -358,7 +348,48 @@
em.getTransaction().rollback();
em.close();
}
+ private EntityManagerFactory factory;
+ private EntityManager em;
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ factory = Persistence.createEntityManagerFactory( "manager1" );
+ }
+ @Override
+ protected void tearDown() throws Exception {
+ handleUnclosedResources();
+ }
+
+ protected void handleUnclosedResources() {
+ try {
+ cleanUnclosed( this.em );
+ } catch ( Exception ignore ) {
+ }
+ if(factory!=null){
+ factory.close();
+ factory=null;
+ }
+ }
+ private void cleanUnclosed(EntityManager em) {
+ if ( em == null ) {
+ return;
+ }
+ if ( em.getTransaction().isActive() ) {
+ em.getTransaction().rollback();
+ }
+ if ( em.isOpen() ) {
+ em.close();
+ }
+ em = null;
+ }
+ protected EntityManager getOrCreateEntityManager() {
+ if ( em == null || !em.isOpen() ) {
+ em = factory.createEntityManager();
+ }
+ return em;
+ }
+
public PackagedEntityManagerTest() {
super();
}
Show replies by date