diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2012-11-26 10:48:38 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2012-11-26 10:48:38 +0000 |
| commit | 0639f931d3a7cf0aa3c0834ed3bfe670dc9b582d (patch) | |
| tree | 0d5900125666765eb7cf4a5de108f1ed87096992 /java/systests | |
| parent | 92626b52ee79478f045dd3308b1c5087095d3d79 (diff) | |
| download | qpid-python-0639f931d3a7cf0aa3c0834ed3bfe670dc9b582d.tar.gz | |
QPID-2796 : Addressed review comments
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1413549 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/systests')
| -rw-r--r-- | java/systests/src/main/java/org/apache/qpid/client/HeartbeatTest.java | 47 |
1 files changed, 45 insertions, 2 deletions
diff --git a/java/systests/src/main/java/org/apache/qpid/client/HeartbeatTest.java b/java/systests/src/main/java/org/apache/qpid/client/HeartbeatTest.java index bb36c7dca4..0e01bda8d0 100644 --- a/java/systests/src/main/java/org/apache/qpid/client/HeartbeatTest.java +++ b/java/systests/src/main/java/org/apache/qpid/client/HeartbeatTest.java @@ -18,13 +18,17 @@ */ package org.apache.qpid.client; +import javax.jms.Destination; +import javax.jms.MessageConsumer; +import javax.jms.MessageProducer; +import javax.jms.Session; import org.apache.qpid.test.utils.QpidBrokerTestCase; public class HeartbeatTest extends QpidBrokerTestCase { public void testHeartbeats() throws Exception { - setTestSystemProperty("amqj.heartbeat.delay","1"); + setTestSystemProperty("amqj.heartbeat.delay", "1"); AMQConnection conn = (AMQConnection) getConnection(); TestListener listener = new TestListener(); conn.setHeartbeatListener(listener); @@ -40,7 +44,7 @@ public class HeartbeatTest extends QpidBrokerTestCase public void testNoHeartbeats() throws Exception { - setTestSystemProperty("amqj.heartbeat.delay","0"); + setTestSystemProperty("amqj.heartbeat.delay", "0"); AMQConnection conn = (AMQConnection) getConnection(); TestListener listener = new TestListener(); conn.setHeartbeatListener(listener); @@ -54,6 +58,45 @@ public class HeartbeatTest extends QpidBrokerTestCase conn.close(); } + public void testReadOnlyConnectionHeartbeats() throws Exception + { + setTestSystemProperty("amqj.heartbeat.delay","1"); + AMQConnection receiveConn = (AMQConnection) getConnection(); + AMQConnection sendConn = (AMQConnection) getConnection(); + Destination destination = getTestQueue(); + TestListener receiveListener = new TestListener(); + TestListener sendListener = new TestListener(); + + + Session receiveSession = receiveConn.createSession(false, Session.CLIENT_ACKNOWLEDGE); + Session senderSession = sendConn.createSession(false, Session.CLIENT_ACKNOWLEDGE); + + MessageConsumer consumer = receiveSession.createConsumer(destination); + MessageProducer producer = senderSession.createProducer(destination); + + receiveConn.setHeartbeatListener(receiveListener); + sendConn.setHeartbeatListener(sendListener); + receiveConn.start(); + + for(int i = 0; i < 5; i++) + { + producer.send(senderSession.createTextMessage("Msg " + i)); + Thread.sleep(500); + assertNotNull("Expected to received message", consumer.receive(500)); + } + + + + assertTrue("Too few heartbeats sent "+receiveListener._heartbeatsSent+" (expected at least 2)", receiveListener._heartbeatsSent>=2); + assertEquals("Unexpected sent at the sender: ",0,sendListener._heartbeatsSent); + + assertTrue("Too few heartbeats received at the sender "+sendListener._heartbeatsReceived+" (expected at least 2)", sendListener._heartbeatsReceived>=2); + assertEquals("Unexpected received at the receiver: ",0,receiveListener._heartbeatsReceived); + + receiveConn.close(); + sendConn.close(); + } + private class TestListener implements HeartbeatListener { int _heartbeatsReceived; |
