[jboss-cvs] JBoss Messaging SVN: r2764 - trunk/tests/src/org/jboss/test/messaging/jms.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Jun 7 08:16:03 EDT 2007
Author: timfox
Date: 2007-06-07 08:16:03 -0400 (Thu, 07 Jun 2007)
New Revision: 2764
Modified:
trunk/tests/src/org/jboss/test/messaging/jms/PersistenceTest.java
Log:
http://jira.jboss.com/jira/browse/JBMESSAGING-324
Modified: trunk/tests/src/org/jboss/test/messaging/jms/PersistenceTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/PersistenceTest.java 2007-06-07 07:02:57 UTC (rev 2763)
+++ trunk/tests/src/org/jboss/test/messaging/jms/PersistenceTest.java 2007-06-07 12:16:03 UTC (rev 2764)
@@ -151,7 +151,92 @@
conn.close();
}
+ /**
+ * Test that the JMSRedelivered and delivery count survives a restart
+ *
+ */
+ public void testJMSRedeliveredRestart() throws Exception
+ {
+ Connection conn = cf.createConnection();
+ Session sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ MessageProducer prod = sess.createProducer(queue);
+ prod.setDeliveryMode(DeliveryMode.PERSISTENT);
+
+ for (int i = 0; i < 10; i++)
+ {
+ TextMessage tm = sess.createTextMessage("message" + i);
+ prod.send(tm);
+ }
+
+ Session sess2 = conn.createSession(true, Session.SESSION_TRANSACTED);
+
+ MessageConsumer cons = sess2.createConsumer(queue);
+
+ conn.start();
+
+ for (int i = 0; i < 10; i++)
+ {
+ TextMessage tm = (TextMessage)cons.receive(1000);
+
+ assertNotNull(tm);
+
+ assertEquals("message" + i, tm.getText());
+
+ assertFalse(tm.getJMSRedelivered());
+
+ assertEquals(1, tm.getIntProperty("JMSXDeliveryCount"));
+ }
+
+ //rollback
+ sess2.rollback();
+
+ for (int i = 0; i < 10; i++)
+ {
+ TextMessage tm = (TextMessage)cons.receive(1000);
+
+ assertNotNull(tm);
+
+ assertEquals("message" + i, tm.getText());
+
+ assertTrue(tm.getJMSRedelivered());
+
+ assertEquals(2, tm.getIntProperty("JMSXDeliveryCount"));
+ }
+
+ conn.close();
+
+
+
+ ServerManagement.stopServerPeer();
+
+ ServerManagement.startServerPeer();
+
+ // Messaging server restart implies new ConnectionFactory lookup
+ cf = (ConnectionFactory)initialContext.lookup("/ConnectionFactory");
+
+ ServerManagement.deployQueue("Queue");
+
+ conn = cf.createConnection();
+ sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ conn.start();
+ cons = sess.createConsumer(queue);
+ for (int i = 0; i < 10; i++)
+ {
+ TextMessage tm = (TextMessage)cons.receive(3000);
+
+ assertNotNull(tm);
+
+ assertEquals("message" + i, tm.getText());
+
+ assertTrue(tm.getJMSRedelivered());
+
+ assertEquals(3, tm.getIntProperty("JMSXDeliveryCount"));
+ }
+
+ conn.close();
+ }
+
/**
* First test that message order survives a restart
*/
@@ -259,15 +344,6 @@
}
-
-// public void testWibble() throws Exception
-// {
-// for (int i = 0; i < 100; i++)
-// {
-// dotestMessageOrderPersistence2();
-// }
- // }
-
/**
* Second test that message order survives a restart
*/
More information about the jboss-cvs-commits
mailing list