summaryrefslogtreecommitdiff
path: root/qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java')
-rw-r--r--qpid/java/common/src/test/java/org/apache/qpid/transport/ConnectionSettingsTest.java133
1 files changed, 119 insertions, 14 deletions
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 57c0549193..fc4f5374f0 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
@@ -20,12 +20,17 @@
*/
package org.apache.qpid.transport;
+import javax.net.ssl.KeyManagerFactory;
+import javax.net.ssl.TrustManagerFactory;
+
import org.apache.qpid.configuration.ClientProperties;
import org.apache.qpid.test.utils.QpidTestCase;
public class ConnectionSettingsTest extends QpidTestCase
{
- ConnectionSettings _conConnectionSettings;
+ private static final String TEST_ALGORITHM_NAME = "algorithmName";
+
+ private ConnectionSettings _conConnectionSettings;
protected void setUp() throws Exception
{
@@ -33,37 +38,137 @@ public class ConnectionSettingsTest extends QpidTestCase
_conConnectionSettings = new ConnectionSettings();
}
- public void testDefaultTCP_NODELAY()
+ public void testTcpNoDelayDefault()
{
assertTrue("Default for isTcpNodelay() should be true", _conConnectionSettings.isTcpNodelay());
}
- public void testSystemPropertyOverrideTrueForTCP_NODELAY()
+ public void testTcpNoDelayOverrideTrue()
{
- systemPropertyOverrideForTCP_NODELAYImpl(ClientProperties.QPID_TCP_NODELAY_PROP_NAME, true);
+ systemPropertyOverrideForTcpDelay(ClientProperties.QPID_TCP_NODELAY_PROP_NAME, true);
}
- public void testSystemPropertyOverrideFalseForTCP_NODELAY()
+ public void testTcpNoDelayOverrideFalse()
{
- systemPropertyOverrideForTCP_NODELAYImpl(ClientProperties.QPID_TCP_NODELAY_PROP_NAME, false);
+ systemPropertyOverrideForTcpDelay(ClientProperties.QPID_TCP_NODELAY_PROP_NAME, false);
}
- public void testLegacySystemPropertyOverrideTrueForTCP_NODELAY()
+ @SuppressWarnings("deprecation")
+ public void testTcpNoDelayLegacyOverrideTrue()
{
- systemPropertyOverrideForTCP_NODELAYImpl(ClientProperties.AMQJ_TCP_NODELAY_PROP_NAME, true);
+ systemPropertyOverrideForTcpDelay(ClientProperties.AMQJ_TCP_NODELAY_PROP_NAME, true);
}
- public void testLegacySystemPropertyOverrideFalseForTCP_NODELAY()
+ @SuppressWarnings("deprecation")
+ public void testTcpNoDelayLegacyOverrideFalse()
{
- systemPropertyOverrideForTCP_NODELAYImpl(ClientProperties.AMQJ_TCP_NODELAY_PROP_NAME, false);
+ systemPropertyOverrideForTcpDelay(ClientProperties.AMQJ_TCP_NODELAY_PROP_NAME, false);
}
- private void systemPropertyOverrideForTCP_NODELAYImpl(String propertyName, boolean value)
+ public void testKeyManagerFactoryAlgorithmDefault()
{
- //set the default via system property
- setTestSystemProperty(propertyName, String.valueOf(value));
+ assertEquals(KeyManagerFactory.getDefaultAlgorithm(), _conConnectionSettings.getKeyManagerFactoryAlgorithm());
+ }
- _conConnectionSettings = new ConnectionSettings();
+ public void testKeyManagerFactoryAlgorithmOverridden()
+ {
+ String algorithmName = TEST_ALGORITHM_NAME;
+ systemPropertyOverrideForKeyFactoryAlgorithm(ClientProperties.QPID_SSL_KEY_MANAGER_FACTORY_ALGORITHM_PROP_NAME, algorithmName);
+ }
+
+ @SuppressWarnings("deprecation")
+ public void testKeyManagerFactoryAlgorithmLegacyOverridden()
+ {
+ String algorithmName = TEST_ALGORITHM_NAME;
+ systemPropertyOverrideForKeyFactoryAlgorithm(ClientProperties.QPID_SSL_KEY_STORE_CERT_TYPE_PROP_NAME, algorithmName);
+ }
+
+ public void testTrustManagerFactoryAlgorithmDefault()
+ {
+ assertEquals(TrustManagerFactory.getDefaultAlgorithm(), _conConnectionSettings.getTrustManagerFactoryAlgorithm());
+ }
+
+ public void testTrustManagerFactoryAlgorithmOverridden()
+ {
+ String algorithmName = TEST_ALGORITHM_NAME;
+ systemPropertyOverrideForTrustFactoryAlgorithm(ClientProperties.QPID_SSL_TRUST_MANAGER_FACTORY_ALGORITHM_PROP_NAME, algorithmName);
+ }
+
+ @SuppressWarnings("deprecation")
+ public void testTrustManagerFactoryAlgorithmLegacyOverridden()
+ {
+ String algorithmName = TEST_ALGORITHM_NAME;
+ systemPropertyOverrideForTrustFactoryAlgorithm(ClientProperties.QPID_SSL_TRUST_STORE_CERT_TYPE_PROP_NAME, algorithmName);
+ }
+
+ public void testSendBufferSizeDefault()
+ {
+ assertEquals("unexpected default for buffer size", 65535, _conConnectionSettings.getWriteBufferSize());
+ }
+
+ public void testSendBufferSizeOverridden()
+ {
+ systemPropertyOverrideForSocketBufferSize(ClientProperties.SEND_BUFFER_SIZE_PROP_NAME, 1024, false);
+ }
+
+ @SuppressWarnings("deprecation")
+ public void testtestSendBufferSizeOverriddenLegacyOverridden()
+ {
+ systemPropertyOverrideForSocketBufferSize(ClientProperties.LEGACY_SEND_BUFFER_SIZE_PROP_NAME, 1024, false);
+ }
+
+ public void testReceiveBufferSizeDefault()
+ {
+ assertEquals("unexpected default for buffer size", 65535, _conConnectionSettings.getReadBufferSize());
+ }
+
+ public void testReceiveBufferSizeOverridden()
+ {
+ systemPropertyOverrideForSocketBufferSize(ClientProperties.RECEIVE_BUFFER_SIZE_PROP_NAME, 1024, true);
+ }
+
+ @SuppressWarnings("deprecation")
+ public void testtestReceiveBufferSizeOverriddenLegacyOverridden()
+ {
+ systemPropertyOverrideForSocketBufferSize(ClientProperties.LEGACY_RECEIVE_BUFFER_SIZE_PROP_NAME, 1024, true);
+ }
+
+ private void systemPropertyOverrideForTcpDelay(String propertyName, boolean value)
+ {
+ resetSystemProperty(propertyName, String.valueOf(value));
assertEquals("Value for isTcpNodelay() is incorrect", value, _conConnectionSettings.isTcpNodelay());
}
+
+ private void systemPropertyOverrideForKeyFactoryAlgorithm(String propertyName, String value)
+ {
+ resetSystemProperty(propertyName, value);
+ assertEquals(value, _conConnectionSettings.getKeyManagerFactoryAlgorithm());
+ }
+
+ private void systemPropertyOverrideForTrustFactoryAlgorithm(String propertyName, String value)
+ {
+ resetSystemProperty(propertyName, value);
+ assertEquals(value, _conConnectionSettings.getTrustManagerFactoryAlgorithm());
+ }
+
+
+ private void systemPropertyOverrideForSocketBufferSize(String propertyName, int value, boolean read)
+ {
+ resetSystemProperty(propertyName, String.valueOf(value));
+ if(read)
+ {
+ assertEquals("unexpected value for receive buffer", value, _conConnectionSettings.getReadBufferSize());
+ }
+ else
+ {
+ assertEquals("unexpected value for send buffer", value, _conConnectionSettings.getWriteBufferSize());
+ }
+ }
+
+ private void resetSystemProperty(String propertyName, String value)
+ {
+ setTestSystemProperty(propertyName, value);
+
+ _conConnectionSettings = new ConnectionSettings();
+ }
}