summaryrefslogtreecommitdiff
path: root/qpid/java/common/src/test
diff options
context:
space:
mode:
authorKeith Wall <kwall@apache.org>2013-10-30 21:38:03 +0000
committerKeith Wall <kwall@apache.org>2013-10-30 21:38:03 +0000
commit9b1bf6023a9869af744e2fbc03664d41ced37df6 (patch)
tree8999f016b40ce753bb560589326fa84d507759ea /qpid/java/common/src/test
parentf6c119bb54dceaa1451f31c7c0be504a7f6bf3ca (diff)
downloadqpid-python-9b1bf6023a9869af744e2fbc03664d41ced37df6.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@1537313 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/common/src/test')
-rw-r--r--qpid/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java19
-rw-r--r--qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java39
2 files changed, 57 insertions, 1 deletions
diff --git a/qpid/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java b/qpid/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java
index 2a8c177f64..335270264c 100644
--- a/qpid/java/common/src/test/java/org/apache/qpid/configuration/QpidPropertyTest.java
+++ b/qpid/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/qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java b/qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java
index fc4f5374f0..d031842f9d 100644
--- a/qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java
+++ b/qpid/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));