[jboss-cvs] JBoss Messaging SVN: r6061 - in trunk: tests/src/org/jboss/messaging/tests/integration/xa and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Mar 11 10:35:20 EDT 2009
Author: clebert.suconic at jboss.com
Date: 2009-03-11 10:35:20 -0400 (Wed, 11 Mar 2009)
New Revision: 6061
Modified:
trunk/src/main/org/jboss/messaging/utils/SimpleString.java
trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaRecoveryTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/util/SimpleStringTest.java
Log:
Few XATests
Modified: trunk/src/main/org/jboss/messaging/utils/SimpleString.java
===================================================================
--- trunk/src/main/org/jboss/messaging/utils/SimpleString.java 2009-03-11 13:36:06 UTC (rev 6060)
+++ trunk/src/main/org/jboss/messaging/utils/SimpleString.java 2009-03-11 14:35:20 UTC (rev 6061)
@@ -289,6 +289,11 @@
}
return false;
}
+
+ public SimpleString concat(final String toAdd)
+ {
+ return concat(new SimpleString(toAdd));
+ }
public SimpleString concat(final SimpleString toAdd)
{
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaRecoveryTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaRecoveryTest.java 2009-03-11 13:36:06 UTC (rev 6060)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaRecoveryTest.java 2009-03-11 14:35:20 UTC (rev 6061)
@@ -312,6 +312,8 @@
m.acknowledge();
clientSession.commit();
}
+
+ assertNull(pageConsumer.receiveImmediate());
}
@@ -557,7 +559,7 @@
assertEquals(xids.length, 0);
clientSession.rollback(xid);
clientSession.start();
- ClientMessage m = clientConsumer.receive(1000);
+ ClientMessage m = clientConsumer.receive(100);
log.info("m is " + m);
assertNull(m);
}
@@ -743,7 +745,7 @@
clientSession.rollback(xid);
clientSession.rollback(xid2);
clientSession.start();
- ClientMessage m = clientConsumer.receive(1000);
+ ClientMessage m = clientConsumer.receive(100);
assertNull(m);
}
@@ -807,7 +809,7 @@
m = clientConsumer.receive(1000);
assertNotNull(m);
assertEquals(m.getBody().readString(), "m4");
- m = clientConsumer.receive(1000);
+ m = clientConsumer.receive(100);
assertNull(m);
}
@@ -938,7 +940,7 @@
assertEquals(xids.length, 0);
clientSession.commit(xid, true);
clientSession.start();
- m = clientConsumer.receive(1000);
+ m = clientConsumer.receive(100);
assertNull(m);
}
@@ -1100,7 +1102,7 @@
assertEquals(xids.length, 0);
clientSession.commit(xid, true);
clientSession.start();
- m = clientConsumer.receive(1000);
+ m = clientConsumer.receive(100);
assertNull(m);
}
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaTest.java 2009-03-11 13:36:06 UTC (rev 6060)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/xa/BasicXaTest.java 2009-03-11 14:35:20 UTC (rev 6061)
@@ -30,6 +30,8 @@
import javax.transaction.xa.XAResource;
import javax.transaction.xa.Xid;
+import com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple;
+
import org.jboss.messaging.core.client.ClientConsumer;
import org.jboss.messaging.core.client.ClientMessage;
import org.jboss.messaging.core.client.ClientProducer;
@@ -77,7 +79,7 @@
configuration.setJournalMinFiles(2);
configuration.setPagingDirectory(getPageDir());
- messagingService = createService(true, configuration, addressSettings);
+ messagingService = createService(false, configuration, addressSettings);
// start the server
messagingService.start();
@@ -119,6 +121,13 @@
super.tearDown();
}
+ public void transactionManagerIntegration() throws Exception
+ {
+ TransactionManagerImple tm = new TransactionManagerImple();
+ tm.begin();
+
+ }
+
public void testSendPrepareDoesntRollbackOnClose() throws Exception
{
Xid xid = new XidImpl("xa1".getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes());
@@ -161,7 +170,6 @@
{
Xid xid = new XidImpl("xa1".getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes());
-
ClientSession clientSession2 = sessionFactory.createSession(false, true, true);
ClientProducer clientProducer = clientSession2.createProducer(atestq);
ClientMessage m1 = createTextMessage(clientSession2, "m1");
@@ -232,7 +240,6 @@
session.start();
}
-
assertTrue(latch.await(10, TimeUnit.SECONDS));
for (TxMessageHandler messageHandler : handlers)
{
@@ -240,6 +247,165 @@
}
}
+ public void testSendMultipleQueues() throws Exception
+ {
+ multipleQueuesInternalTest(false, false);
+ }
+
+ public void testSendMultipleQueuesRecreate() throws Exception
+ {
+ multipleQueuesInternalTest(false, true);
+ }
+
+ public void testSendMultipleSuspend() throws Exception
+ {
+ multipleQueuesInternalTest(true, false);
+ }
+
+ public void testSendMultipleSuspendRecreate() throws Exception
+ {
+ multipleQueuesInternalTest(true, true);
+ }
+
+ /**
+ * @throws MessagingException
+ * @throws XAException
+ */
+ protected void multipleQueuesInternalTest(boolean suspend, boolean recreateSession) throws MessagingException,
+ XAException
+ {
+ int NUMBER_OF_MSGS = 100;
+ int NUMBER_OF_QUEUES = 10;
+ ClientSession session = null;
+
+ SimpleString ADDRESS = new SimpleString("Address");
+
+ try
+ {
+
+ session = sessionFactory.createSession(true, false, false);
+
+ for (int i = 0; i < NUMBER_OF_QUEUES; i++)
+ {
+ session.createQueue(ADDRESS, ADDRESS.concat(Integer.toString(i)), true);
+ }
+
+ for (int tr = 0; tr < 2; tr++)
+ {
+
+ Xid xid = new XidImpl("xa1".getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes());
+
+ session.start(xid, XAResource.TMNOFLAGS);
+
+ ClientProducer prod = session.createProducer(ADDRESS);
+ for (int nmsg = 0; nmsg < NUMBER_OF_MSGS; nmsg++)
+ {
+ ClientMessage msg = createTextMessage(session, "SimpleMessage" + nmsg);
+ prod.send(msg);
+ }
+
+ if (suspend)
+ {
+ session.end(xid, XAResource.TMSUSPEND);
+ session.start(xid, XAResource.TMRESUME);
+ }
+
+ prod.send(createTextMessage(session, "one more"));
+
+ prod.close();
+
+ session.end(xid, XAResource.TMSUCCESS);
+
+ session.prepare(xid);
+
+ if (recreateSession)
+ {
+ session.close();
+ session = sessionFactory.createSession(true, false, false);
+ }
+
+ if (tr == 0)
+ {
+ session.rollback(xid);
+ }
+ else
+ {
+ session.commit(xid, false);
+ }
+
+ }
+
+ for (int i = 0; i < 2; i++)
+ {
+
+ Xid xid = new XidImpl("xa1".getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes());
+
+ session.start(xid, XAResource.TMNOFLAGS);
+
+ for (int nqueues = 0; nqueues < NUMBER_OF_QUEUES; nqueues++)
+ {
+
+ ClientConsumer consumer = session.createConsumer(ADDRESS.concat(Integer.toString(nqueues)));
+
+ session.start();
+
+ for (int nmsg = 0; nmsg < NUMBER_OF_MSGS; nmsg++)
+ {
+ ClientMessage msg = consumer.receive(1000);
+
+ assertNotNull(msg);
+
+ assertEquals("SimpleMessage" + nmsg, getTextMessage(msg));
+
+ msg.acknowledge();
+ }
+
+ ClientMessage msg = consumer.receive(1000);
+ assertNotNull(msg);
+
+ if (suspend)
+ {
+ session.end(xid, XAResource.TMSUSPEND);
+ session.start(xid, XAResource.TMRESUME);
+ }
+
+ assertEquals("one more", getTextMessage(msg));
+
+ assertNull(consumer.receiveImmediate());
+
+ consumer.close();
+
+ }
+
+ session.end(xid, XAResource.TMSUCCESS);
+
+ session.prepare(xid);
+
+ if (recreateSession)
+ {
+ session.close();
+ session = sessionFactory.createSession(true, false, false);
+ }
+
+ if (i == 0)
+ {
+ session.rollback(xid);
+ }
+ else
+ {
+ session.commit(xid, true);
+ }
+ }
+ }
+ finally
+ {
+ if (session != null)
+ {
+ session.close();
+ }
+ }
+ }
+
class TxMessageHandler implements MessageHandler
{
boolean failedToAck = false;
@@ -256,7 +422,9 @@
public void onMessage(final ClientMessage message)
{
- Xid xid = new XidImpl(UUIDGenerator.getInstance().generateStringUUID().getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes());
+ Xid xid = new XidImpl(UUIDGenerator.getInstance().generateStringUUID().getBytes(),
+ 1,
+ UUIDGenerator.getInstance().generateStringUUID().getBytes());
try
{
session.start(xid, XAResource.TMNOFLAGS);
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/util/SimpleStringTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/util/SimpleStringTest.java 2009-03-11 13:36:06 UTC (rev 6060)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/util/SimpleStringTest.java 2009-03-11 14:35:20 UTC (rev 6061)
@@ -316,5 +316,11 @@
SimpleString end = new SimpleString("qrstuvwxyz");
assertEquals(start.concat(middle).concat(end), new SimpleString("abcdefghijklmnopqrstuvwxyz"));
assertEquals(start.concat('.').concat(end), new SimpleString("abcdefg.qrstuvwxyz"));
+ // Testing concat of SimpleString with String
+ for (int i = 0; i < 10; i++)
+ {
+ assertEquals(new SimpleString("abcdefg-" + i), start.concat("-" + Integer.toString(i)));
+
+ }
}
}
More information about the jboss-cvs-commits
mailing list