Stomp 1.1 - add a testcase for sending messages after expired heartbeat
-----------------------------------------------------------------------
Key: AMQ-3484
URL: https://issues.apache.org/jira/browse/AMQ-3484
Project: ActiveMQ
Issue Type: Improvement
Components: Connector
Affects Versions: 5.6.0
Reporter: Michael Justin
Priority: Minor
The testcase below waits for five seconds after connecting and then tries to
write a SEND frame. The test fails if a frame can be sent to the broker after
missing heartbeat signals.
public void testSendAfterMissingHeartbeat() throws Exception {
String connectFrame = "STOMP\n" +
"login: system\n" +
"passcode: manager\n" +
"accept-version:1.1\n" +
"heart-beat:1000,0\n" +
"host:localhost\n" +
"\n" + Stomp.NULL;
stompConnection.sendFrame(connectFrame);
String f = stompConnection.receiveFrame();
assertTrue(f.startsWith("CONNECTED"));
assertTrue(f.indexOf("version:1.1") >= 0);
assertTrue(f.indexOf("heart-beat:") >= 0);
assertTrue(f.indexOf("session:") >= 0);
LOG.debug("Broker sent: " + f);
Thread.sleep(5000);
try { String message = "SEND\n" + "destination:/queue/" + getQueueName() +
"\n\n" + "Hello World" + Stomp.NULL; stompConnection.sendFrame(message);
fail("SEND frame has been accepted after missing heart beat"); } catch
(Exception ex) { System.out.println(ex.getMessage()); }
}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira