[jboss-svn-commits] JBL Code SVN: r28358 - labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/test/java/uk/ac/ncl/sdia/a8905943/persistence/xa.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jul 23 14:46:47 EDT 2009
Author: whitingjr
Date: 2009-07-23 14:46:47 -0400 (Thu, 23 Jul 2009)
New Revision: 28358
Added:
labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/test/java/uk/ac/ncl/sdia/a8905943/persistence/xa/JUnitTestSTMXADatasourceImpl.java
Log:
Added: labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/test/java/uk/ac/ncl/sdia/a8905943/persistence/xa/JUnitTestSTMXADatasourceImpl.java
===================================================================
--- labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/test/java/uk/ac/ncl/sdia/a8905943/persistence/xa/JUnitTestSTMXADatasourceImpl.java (rev 0)
+++ labs/jbosstm/workspace/whitingjr/trunk/MVCCSampleSTM/src/test/java/uk/ac/ncl/sdia/a8905943/persistence/xa/JUnitTestSTMXADatasourceImpl.java 2009-07-23 18:46:47 UTC (rev 28358)
@@ -0,0 +1,83 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ *
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package uk.ac.ncl.sdia.a8905943.persistence.xa;
+
+import java.sql.SQLException;
+
+import javax.sql.XAConnection;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+public class JUnitTestSTMXADatasourceImpl
+{
+
+ @Test
+ public void testCheckDataSourceCreationWorks()
+ {
+ STMXADatasourceImpl dataSource = new STMXADatasourceImpl();
+ dataSource.setDatabaseName("aag");
+ try
+ {
+ XAConnection connection = dataSource.getXAConnection();
+ Assert.assertNotNull(connection);
+ Assert.assertNotNull(connection.getXAResource());
+ }
+ catch (SQLException sqle)
+ {
+ Assert.fail(sqle.getMessage());
+ }
+ }
+
+ @Test
+ public void testCheckCreatingDataSourceObjectsHaveIdenticalSTM()
+ {
+ STMXADatasourceImpl dataSourceA = new STMXADatasourceImpl();
+ dataSourceA.setDatabaseName("hmrc");// databaseName is important
+
+ STMXADatasourceImpl dataSourceB = new STMXADatasourceImpl();
+ dataSourceB.setDatabaseName("hmrc");
+
+ try
+ {
+ STMXAConnectionImpl connectionA = (STMXAConnectionImpl)dataSourceA.getXAConnection();
+ STMXAConnectionImpl connectionB = (STMXAConnectionImpl)dataSourceB.getXAConnection();
+ Assert.assertNotNull(connectionA);
+ Assert.assertNotNull(connectionB);
+ Assert.assertEquals(connectionA.getSTM(), connectionB.getSTM());
+ Assert.assertTrue(connectionA.getSTM() == connectionB.getSTM());
+ }
+ catch (SQLException sqle)
+ {
+ Assert.fail(sqle.getMessage());
+ }
+ }
+
+ @Test
+ public void testCheckDifferentDatabaseCreatesDifferentSTMInstance()
+ {
+ STMXADatasourceImpl dataSourceA = new STMXADatasourceImpl();
+ dataSourceA.setDatabaseName("hmrc");
+
+ STMXADatasourceImpl dataSourceB = new STMXADatasourceImpl();
+ dataSourceB.setDatabaseName("inlandRevenue");
+
+ Assert.assertNotNull(dataSourceA);
+ Assert.assertNotNull(dataSourceB);
+
+ try
+ {
+ STMXAConnectionImpl connectionA = (STMXAConnectionImpl)dataSourceA.getXAConnection();
+ STMXAConnectionImpl connectionB = (STMXAConnectionImpl)dataSourceB.getXAConnection();
+ Assert.assertNotSame(connectionA.getSTM(), connectionB.getSTM());
+ }
+ catch (SQLException sqle)
+ {
+ Assert.fail(sqle.getMessage());
+ }
+ }
+}
More information about the jboss-svn-commits
mailing list