diff options
| author | Robert Gemmell <robbie@apache.org> | 2012-05-29 22:50:35 +0000 |
|---|---|---|
| committer | Robert Gemmell <robbie@apache.org> | 2012-05-29 22:50:35 +0000 |
| commit | 4e82caaece6d7b1626edc0b0913d45cad8771596 (patch) | |
| tree | a08c7faba239fcc8bd9ab73c9ccd9ca7a7ca02ce /qpid/java/broker/src/test | |
| parent | 3f64f140c95f54adfd5d698765f01d04670a0af0 (diff) | |
| download | qpid-python-4e82caaece6d7b1626edc0b0913d45cad8771596.tar.gz | |
QPID-4029: add ability to selectively include a protocol version on a given port, overriding an exclusion on the same port or it being disabled on all ports.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1344040 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker/src/test')
3 files changed, 140 insertions, 0 deletions
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java index bb20e0200b..43824e713f 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java @@ -199,4 +199,31 @@ public class BrokerOptionsTest extends QpidTestCase _options.setLogWatchFrequency(myFreq); assertEquals(myFreq, _options.getLogWatchFrequency()); } + + public void testDefaultIncludesPortFor0_10() + { + assertEquals(Collections.EMPTY_SET, _options.getIncludedPorts(ProtocolInclusion.v0_10)); + } + + public void testOverriddenIncludesPortFor0_10() + { + _options.addIncludedPort(ProtocolInclusion.v0_10, TEST_PORT1); + assertEquals(Collections.singleton(TEST_PORT1), _options.getIncludedPorts(ProtocolInclusion.v0_10)); + } + + public void testManyOverriddenIncludedPortFor0_10() + { + _options.addIncludedPort(ProtocolInclusion.v0_10, TEST_PORT1); + _options.addIncludedPort(ProtocolInclusion.v0_10, TEST_PORT2); + final Set<Integer> expectedPorts = new HashSet<Integer>(Arrays.asList(new Integer[] {TEST_PORT1, TEST_PORT2})); + assertEquals(expectedPorts, _options.getIncludedPorts(ProtocolInclusion.v0_10)); + } + + public void testDuplicatedOverriddenIncludedPortFor0_10AreSilentlyIgnored() + { + _options.addIncludedPort(ProtocolInclusion.v0_10, TEST_PORT1); + _options.addIncludedPort(ProtocolInclusion.v0_10, TEST_PORT2); + final Set<Integer> expectedPorts = new HashSet<Integer>(Arrays.asList(new Integer[] {TEST_PORT1, TEST_PORT2})); + assertEquals(expectedPorts, _options.getIncludedPorts(ProtocolInclusion.v0_10)); + } } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java index 31d5028536..ffd607574e 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java @@ -47,6 +47,11 @@ public class MainTest extends QpidTestCase { assertEquals(0, options.getExcludedPorts(pe).size()); } + + for(ProtocolInclusion pe : EnumSet.allOf(ProtocolInclusion.class)) + { + assertEquals(0, options.getIncludedPorts(pe).size()); + } } public void testPortOverriddenSingle() @@ -162,6 +167,20 @@ public class MainTest extends QpidTestCase assertTrue("Parsed command line didnt pick up help option", main.getCommandLine().hasOption("h")); } + public void testInclude010() + { + BrokerOptions options = startDummyMain("-p 5678 --include-0-10 5678"); + + assertTrue(options.getPorts().contains(5678)); + assertEquals(1, options.getPorts().size()); + assertTrue(options.getIncludedPorts(ProtocolInclusion.v0_10).contains(5678)); + assertEquals(1, options.getIncludedPorts(ProtocolInclusion.v0_10).size()); + assertEquals(0, options.getIncludedPorts(ProtocolInclusion.v0_9_1).size()); + assertEquals(0, options.getIncludedPorts(ProtocolInclusion.v0_9).size()); + assertEquals(0, options.getIncludedPorts(ProtocolInclusion.v0_8).size()); + assertEquals(0, options.getIncludedPorts(ProtocolInclusion.v1_0).size()); + } + private BrokerOptions startDummyMain(String commandLine) { return (new TestMain(commandLine.split("\\s"))).getOptions(); diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java index 4caefc2f18..958cb23da0 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java @@ -25,6 +25,7 @@ import org.apache.commons.configuration.XMLConfiguration; import org.apache.qpid.framing.AMQShortString; import org.apache.qpid.server.exchange.Exchange; +import org.apache.qpid.server.protocol.AmqpProtocolVersion; import org.apache.qpid.server.registry.ApplicationRegistry; import org.apache.qpid.server.registry.ConfigurationFileApplicationRegistry; import org.apache.qpid.server.util.TestApplicationRegistry; @@ -1588,6 +1589,99 @@ public class ServerConfigurationTest extends QpidTestCase assertEquals(false, _serverConfig.isAmqp08enabled()); } + public void testPortInclude08() throws ConfigurationException + { + // Check default + _serverConfig.initialise(); + assertEquals(true, _serverConfig.getPortInclude08().isEmpty()); + + // Check values we set + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_08, "1"); + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_08, "2"); + _serverConfig = new ServerConfiguration(_config); + _serverConfig.initialise(); + assertEquals(2, _serverConfig.getPortInclude08().size()); + assertTrue(_serverConfig.getPortInclude08().contains("1")); + assertTrue(_serverConfig.getPortInclude08().contains("2")); + } + + public void testPortInclude09() throws ConfigurationException + { + // Check default + _serverConfig.initialise(); + assertEquals(true, _serverConfig.getPortInclude09().isEmpty()); + + // Check values we set + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_09, "3"); + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_09, "4"); + _serverConfig = new ServerConfiguration(_config); + _serverConfig.initialise(); + assertEquals(2, _serverConfig.getPortInclude09().size()); + assertTrue(_serverConfig.getPortInclude09().contains("3")); + assertTrue(_serverConfig.getPortInclude09().contains("4")); + } + + public void testPortInclude091() throws ConfigurationException + { + // Check default + _serverConfig.initialise(); + assertEquals(true, _serverConfig.getPortInclude091().isEmpty()); + + // Check values we set + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_091, "5"); + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_091, "6"); + _serverConfig = new ServerConfiguration(_config); + _serverConfig.initialise(); + assertEquals(2, _serverConfig.getPortInclude091().size()); + assertTrue(_serverConfig.getPortInclude091().contains("5")); + assertTrue(_serverConfig.getPortInclude091().contains("6")); + } + + public void testPortInclude010() throws ConfigurationException + { + // Check default + _serverConfig.initialise(); + assertEquals(true, _serverConfig.getPortInclude010().isEmpty()); + + // Check values we set + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_010, "7"); + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_010, "8"); + _serverConfig = new ServerConfiguration(_config); + _serverConfig.initialise(); + assertEquals(2, _serverConfig.getPortInclude010().size()); + assertTrue(_serverConfig.getPortInclude010().contains("7")); + assertTrue(_serverConfig.getPortInclude010().contains("8")); + } + + public void testPortInclude10() throws ConfigurationException + { + // Check default + _serverConfig.initialise(); + assertEquals(true, _serverConfig.getPortInclude10().isEmpty()); + + // Check values we set + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_10, "9"); + _config.addProperty(ServerConfiguration.CONNECTOR_INCLUDE_10, "10"); + _serverConfig = new ServerConfiguration(_config); + _serverConfig.initialise(); + assertEquals(2, _serverConfig.getPortInclude10().size()); + assertTrue(_serverConfig.getPortInclude10().contains("9")); + assertTrue(_serverConfig.getPortInclude10().contains("10")); + } + + public void testGetDefaultSupportedProtocolReply() throws Exception + { + // Check default + _serverConfig.initialise(); + assertNull("unexpected default value", _serverConfig.getDefaultSupportedProtocolReply()); + + // Check values we set + _config.addProperty(ServerConfiguration.CONNECTOR_AMQP_SUPPORTED_REPLY, "v0_10"); + _serverConfig = new ServerConfiguration(_config); + _serverConfig.initialise(); + assertEquals(AmqpProtocolVersion.v0_10, _serverConfig.getDefaultSupportedProtocolReply()); + } + /** * Convenience method to output required security preamble for broker config */ |
