diff options
author | Keith Wall <kwall@apache.org> | 2013-10-30 21:38:03 +0000 |
---|---|---|
committer | Keith Wall <kwall@apache.org> | 2013-10-30 21:38:03 +0000 |
commit | 7202b9e68285695f650c2c05f1b3987b1960004c (patch) | |
tree | 814667982fd0bf861dca35f114a7250cc98c23b7 /java/common/src/test | |
parent | 1568bd8090c8b3df4463849ac27dd08452309335 (diff) | |
download | qpid-python-7202b9e68285695f650c2c05f1b3987b1960004c.tar.gz |
QPID-4534: unify client heartbeat system properties/connection url options.
* Connection url 'heartbeat' broker-option (and deprecated 'idle_timeout') now understood for all protocols
* System property 'qpid.heartbeat' (and deprecated 'amqj.heartbeat.delay' and 'idle_timeout') now understood for all protocols
* Enhanced heartbeat system tests
* Docbook updates
Original patch from Keith Wall, plus updates from Robbie Gemmell
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1537313 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/common/src/test')
-rw-r--r-- | java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java | 19 | ||||
-rw-r--r-- | java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java | 39 |
2 files changed, 57 insertions, 1 deletions
diff --git a/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java b/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java index 2a8c177f64..335270264c 100644 --- a/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java +++ b/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java @@ -145,6 +145,25 @@ public class QpidPropertyTest extends QpidTestCase assertEquals(expectedValue, propertyValue); } + public void testFloatValueReadFromSystemProperty() throws Exception + { + float expectedValue = 1.5f; + setTestSystemProperty(_systemPropertyName, Float.valueOf(expectedValue).toString()); + assertSystemPropertiesSet(_systemPropertyName); + + float propertyValue = QpidProperty.floatProperty(1.5f, _systemPropertyName).get(); + assertEquals(expectedValue, propertyValue, 0.1); + } + + public void testFloatValueIsDefaultWhenOneSystemPropertyIsNotSet() throws Exception + { + float expectedValue = 1.5f; + assertSystemPropertiesNotSet(_systemPropertyName); + + float propertyValue = QpidProperty.floatProperty(expectedValue, _systemPropertyName).get(); + assertEquals(expectedValue, propertyValue, 0.1); + } + private void assertSystemPropertiesSet(String... systemPropertyNames) { for (String systemPropertyName : systemPropertyNames) diff --git a/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java b/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java index fc4f5374f0..d031842f9d 100644 --- a/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java +++ b/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java @@ -128,11 +128,48 @@ public class ConnectionSettingsTest extends QpidTestCase } @SuppressWarnings("deprecation") - public void testtestReceiveBufferSizeOverriddenLegacyOverridden() + public void testReceiveBufferSizeOverriddenLegacyOverridden() { systemPropertyOverrideForSocketBufferSize(ClientProperties.LEGACY_RECEIVE_BUFFER_SIZE_PROP_NAME, 1024, true); } + public void testHeartbeatingDefaults() + { + assertNull(_conConnectionSettings.getHeartbeatInterval08()); + assertEquals(ClientProperties.QPID_HEARTBEAT_INTERVAL_010_DEFAULT,_conConnectionSettings.getHeartbeatInterval010()); + assertEquals(2.0, _conConnectionSettings.getHeartbeatTimeoutFactor(), 0.1); + } + + public void testHeartbeatingOverridden() + { + resetSystemProperty(ClientProperties.QPID_HEARTBEAT_INTERVAL, "60"); + resetSystemProperty(ClientProperties.QPID_HEARTBEAT_TIMEOUT_FACTOR, "2.5"); + + assertEquals(Integer.valueOf(60), _conConnectionSettings.getHeartbeatInterval08()); + assertEquals(60, _conConnectionSettings.getHeartbeatInterval010()); + assertEquals(2.5, _conConnectionSettings.getHeartbeatTimeoutFactor(), 0.1); + } + + @SuppressWarnings("deprecation") + public void testHeartbeatingOverriddenUsingAmqjLegacyOption() + { + resetSystemProperty(ClientProperties.AMQJ_HEARTBEAT_DELAY, "30"); + resetSystemProperty(ClientProperties.AMQJ_HEARTBEAT_TIMEOUT_FACTOR, "1.5"); + + assertEquals(Integer.valueOf(30), _conConnectionSettings.getHeartbeatInterval08()); + assertEquals(30, _conConnectionSettings.getHeartbeatInterval010()); + assertEquals(1.5, _conConnectionSettings.getHeartbeatTimeoutFactor(), 0.1); + } + + @SuppressWarnings("deprecation") + public void testHeartbeatingOverriddenUsingOlderLegacyOption() + { + resetSystemProperty(ClientProperties.IDLE_TIMEOUT_PROP_NAME, "30000"); + + assertEquals(Integer.valueOf(30), _conConnectionSettings.getHeartbeatInterval08()); + assertEquals(30, _conConnectionSettings.getHeartbeatInterval010()); + } + private void systemPropertyOverrideForTcpDelay(String propertyName, boolean value) { resetSystemProperty(propertyName, String.valueOf(value)); |