[jboss-svn-commits] JBL Code SVN: r35321 - in labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta: utils and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Sep 27 23:33:31 EDT 2010


Author: mark.little at jboss.com
Date: 2010-09-27 23:33:30 -0400 (Mon, 27 Sep 2010)
New Revision: 35321

Modified:
   labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/twophase/TransactionImpleUnitTest.java
   labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/utils/JNDIManagerUnitTest.java
Log:
https://jira.jboss.org/browse/JBTM-712

Modified: labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/twophase/TransactionImpleUnitTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/twophase/TransactionImpleUnitTest.java	2010-09-28 00:28:19 UTC (rev 35320)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/twophase/TransactionImpleUnitTest.java	2010-09-28 03:33:30 UTC (rev 35321)
@@ -32,6 +32,7 @@
 package com.hp.mwtests.ts.jta.twophase;
 
 import java.lang.reflect.Method;
+import java.sql.SQLException;
 
 import javax.naming.InitialContext;
 import javax.transaction.HeuristicMixedException;
@@ -46,7 +47,9 @@
 import com.arjuna.ats.internal.arjuna.thread.ThreadActionData;
 import com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple;
 import com.arjuna.ats.jta.TransactionManager;
+import com.arjuna.ats.jta.exceptions.NotImplementedException;
 import com.arjuna.ats.jta.utils.JTAHelper;
+import com.arjuna.ats.jta.xa.XAModifier;
 import com.arjuna.ats.jta.xa.XidImple;
 import com.hp.mwtests.ts.jta.common.DummyXA;
 import com.hp.mwtests.ts.jta.common.FailureXAResource;
@@ -74,6 +77,23 @@
     }
 }
 
+class DummyXAModifier implements XAModifier
+{
+    @Override
+    public Xid createXid (Xid xid) throws SQLException, NotImplementedException
+    {
+        return xid;
+    }
+
+    @Override
+    public int xaStartParameters (int level) throws SQLException,
+            NotImplementedException
+    {
+        return 0;
+    }
+    
+}
+
 public class TransactionImpleUnitTest
 {
     @Test
@@ -91,6 +111,8 @@
         
         tx.delistResource(res, XAResource.TMSUSPEND);
         
+        assertTrue(tx.isAlive());
+        
         tx.commit();  
         
         assertTrue(tx.getRemainingTimeoutMills() != -1);
@@ -113,13 +135,19 @@
         catch (final Throwable ex)
         {
         }
+        
+        assertNull(TransactionImple.getTransaction(null));
     }
     
     @Test
     public void testThreadIsActive () throws Exception
     {
+        ThreadActionData.purgeActions();
+        
         Class[] parameterTypes = new Class[1];
         TransactionImple tx = new TransactionImple(0);
+
+        tx.enlistResource(new RecoveryXAResource());
         
         parameterTypes[0] = XAResource.class;
         
@@ -132,9 +160,35 @@
         Boolean res = (Boolean) m.invoke(tx, parameters);
         
         assertFalse(res.booleanValue());
+        
+        tx.rollback();
     }
     
     @Test
+    public void testXidCreation () throws Exception
+    {
+        Class[] parameterTypes = new Class[2];
+        TransactionImple tx = new TransactionImple(0);
+        
+        parameterTypes[0] = boolean.class;
+        parameterTypes[1] = XAModifier.class;
+        
+        Method m = tx.getClass().getDeclaredMethod("createXid", parameterTypes);
+        m.setAccessible(true);
+        
+        Object[] parameters = new Object[2];
+        
+        parameters[0] = false;
+        parameters[1] = new DummyXAModifier();
+        
+        Xid res = (Xid) m.invoke(tx, parameters);
+        
+        assertTrue(res != null);
+        
+        tx.rollback();
+    }
+    
+    @Test
     public void testEnlist () throws Exception
     {
         ThreadActionData.purgeActions();

Modified: labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/utils/JNDIManagerUnitTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/utils/JNDIManagerUnitTest.java	2010-09-28 00:28:19 UTC (rev 35320)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/utils/JNDIManagerUnitTest.java	2010-09-28 03:33:30 UTC (rev 35321)
@@ -21,8 +21,6 @@
 
 package com.hp.mwtests.ts.jta.utils;
 
-import javax.naming.InitialContext;
-
 import org.junit.Test;
 
 import com.arjuna.ats.jta.utils.JNDIManager;
@@ -46,7 +44,7 @@
         
         try
         {
-            JNDIManager.bindJTAImplementations(new InitialContext());
+            JNDIManager.bindJTAImplementations(null);
             
             fail();
         }
@@ -66,7 +64,7 @@
         
         try
         {
-            JNDIManager.bindJTATransactionManagerImplementation(new InitialContext());
+            JNDIManager.bindJTATransactionManagerImplementation(null);
             
             fail();
         }
@@ -86,7 +84,7 @@
         
         try
         {
-            JNDIManager.bindJTATransactionSynchronizationRegistryImplementation(new InitialContext());
+            JNDIManager.bindJTATransactionSynchronizationRegistryImplementation(null);
             
             fail();
         }
@@ -106,7 +104,7 @@
         
         try
         {
-            JNDIManager.bindJTAUserTransactionImplementation(new InitialContext());
+            JNDIManager.bindJTAUserTransactionImplementation(null);
             
             fail();
         }
@@ -130,7 +128,7 @@
         
         try
         {
-            JNDIManager.unbindJTATransactionManagerImplementation(new InitialContext());
+            JNDIManager.unbindJTATransactionManagerImplementation(null);
             
             fail();
         }
@@ -150,7 +148,7 @@
         
         try
         {
-            JNDIManager.unbindJTATransactionSynchronizationRegistryImplementation(new InitialContext());
+            JNDIManager.unbindJTATransactionSynchronizationRegistryImplementation(null);
             
             fail();
         }



More information about the jboss-svn-commits mailing list