Author: robbie
Date: Sun Mar 11 16:43:36 2012
New Revision: 1299396
URL: http://svn.apache.org/viewvc?rev=1299396&view=rev
Log:
QPID-3873: update test additions to fix defects around deliverymode variation,
reduce the unecessarily large number of messages sent, remove the effectively
duplicate tests using topics
Modified:
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/transacted/TransactionTimeoutTest.java
Modified:
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/transacted/TransactionTimeoutTest.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/transacted/TransactionTimeoutTest.java?rev=1299396&r1=1299395&r2=1299396&view=diff
==============================================================================
---
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/transacted/TransactionTimeoutTest.java
(original)
+++
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/transacted/TransactionTimeoutTest.java
Sun Mar 11 16:43:36 2012
@@ -25,10 +25,6 @@ import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageProducer;
import javax.jms.Queue;
-import javax.jms.Session;
-import javax.jms.Topic;
-import javax.jms.TopicPublisher;
-import javax.jms.TopicSession;
/**
* This tests the behaviour of transactional sessions when the {@code
transactionTimeout} configuration
@@ -316,59 +312,32 @@ public class TransactionTimeoutTest exte
monitor(0, 0);
}
+ /**
+ * Tests that sending an unroutable persistent message does not result in
a long running store transaction [warning].
+ */
public void testTransactionCommittedOnNonRoutableQueuePersistentMessage()
throws Exception
{
checkTransactionCommittedOnNonRoutableQueueMessage(DeliveryMode.PERSISTENT);
}
+ /**
+ * Tests that sending an unroutable transient message does not result in a
long running store transaction [warning].
+ */
public void testTransactionCommittedOnNonRoutableQueueTransientMessage()
throws Exception
{
-
checkTransactionCommittedOnNonRoutableQueueMessage(DeliveryMode.PERSISTENT);
- }
-
- public void testTransactionCommittedOnNonRoutableTopicPersistentMessage()
throws Exception
- {
-
checkTransactionCommittedOnNonRoutableTopicMessage(DeliveryMode.PERSISTENT);
- }
-
- public void testTransactionCommittedOnNonRoutableTopicTransientMessage()
throws Exception
- {
-
checkTransactionCommittedOnNonRoutableTopicMessage(DeliveryMode.PERSISTENT);
+
checkTransactionCommittedOnNonRoutableQueueMessage(DeliveryMode.NON_PERSISTENT);
}
- protected void checkTransactionCommittedOnNonRoutableQueueMessage(int
deliveryMode) throws JMSException, Exception
+ private void checkTransactionCommittedOnNonRoutableQueueMessage(int
deliveryMode) throws JMSException, Exception
{
- Queue nonExisting = _psession.createQueue("non-existent-queue-" +
System.currentTimeMillis());
+ Queue nonExisting = _psession.createQueue(getTestQueueName() +
System.currentTimeMillis());
MessageProducer producer = _psession.createProducer(nonExisting);
Message message = _psession.createMessage();
- message.setJMSDeliveryMode(deliveryMode);
- for (int i=0;i<1000; i++)
- {
- producer.send(message);
- }
+ producer.send(message, deliveryMode, Message.DEFAULT_PRIORITY,
Message.DEFAULT_TIME_TO_LIVE);
_psession.commit();
// give time to house keeping thread to log messages
sleep(3f);
monitor(0, 0);
}
-
- protected void checkTransactionCommittedOnNonRoutableTopicMessage(int
deliveryMode) throws JMSException, Exception
- {
- final TopicSession session = _con.createTopicSession(true,
Session.SESSION_TRANSACTED);
- Topic nonExisting = session.createTopic("non-existent-topic-" +
System.currentTimeMillis());
-
- TopicPublisher topicPublisher = session.createPublisher(nonExisting);
- Message message = session.createMessage();
- message.setJMSDeliveryMode(deliveryMode);
- for (int i=0;i<1000; i++)
- {
- topicPublisher.send(message);
- }
- session.commit();
-
- // give time to house keeping thread to log messages
- sleep(3f);
- monitor(0, 0);
- }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]