You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ma...@apache.org on 2017/11/24 15:47:28 UTC
[1/2] activemq-artemis git commit: This closes #1664
Repository: activemq-artemis
Updated Branches:
refs/heads/master 245495196 -> ae367c6af
This closes #1664
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/ae367c6a
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/ae367c6a
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/ae367c6a
Branch: refs/heads/master
Commit: ae367c6aff62f8fffee0019a761c16c33b9d46a7
Parents: 2454951 7beb378
Author: Martyn Taylor <mt...@redhat.com>
Authored: Fri Nov 24 13:17:01 2017 +0000
Committer: Martyn Taylor <mt...@redhat.com>
Committed: Fri Nov 24 13:17:01 2017 +0000
----------------------------------------------------------------------
.../integration/server/ConfigurationTest.java | 63 +++++++++++
.../src/test/resources/duplicate-queues.xml | 104 +++++++++++++++++++
2 files changed, 167 insertions(+)
----------------------------------------------------------------------
[2/2] activemq-artemis git commit: NO-JIRA Adding test for duplicate
queues in config
Posted by ma...@apache.org.
NO-JIRA Adding test for duplicate queues in config
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/7beb3780
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/7beb3780
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/7beb3780
Branch: refs/heads/master
Commit: 7beb378061f1de6ae670fb7cc3fbde08d3990fcd
Parents: 2454951
Author: Andy Taylor <an...@gmail.com>
Authored: Wed Nov 22 15:42:48 2017 +0000
Committer: Martyn Taylor <mt...@redhat.com>
Committed: Fri Nov 24 13:17:01 2017 +0000
----------------------------------------------------------------------
.../integration/server/ConfigurationTest.java | 63 +++++++++++
.../src/test/resources/duplicate-queues.xml | 104 +++++++++++++++++++
2 files changed, 167 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/7beb3780/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/server/ConfigurationTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/server/ConfigurationTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/server/ConfigurationTest.java
new file mode 100644
index 0000000..48b3327
--- /dev/null
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/server/ConfigurationTest.java
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.activemq.artemis.tests.integration.server;
+
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.config.FileDeploymentManager;
+import org.apache.activemq.artemis.core.config.impl.FileConfiguration;
+import org.apache.activemq.artemis.core.config.impl.SecurityConfiguration;
+import org.apache.activemq.artemis.core.postoffice.Bindings;
+import org.apache.activemq.artemis.core.server.ActiveMQServer;
+import org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl;
+import org.apache.activemq.artemis.jms.server.config.impl.FileJMSConfiguration;
+import org.apache.activemq.artemis.spi.core.security.ActiveMQJAASSecurityManager;
+import org.apache.activemq.artemis.spi.core.security.jaas.InVMLoginModule;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
+import org.junit.Test;
+
+public class ConfigurationTest extends ActiveMQTestBase {
+ @Test
+ public void testStartWithDuplicateQueues() throws Exception {
+ ActiveMQServer server = getActiveMQServer("duplicate-queues.xml");
+ try {
+ server.start();
+ Bindings mytopic_1 = server.getPostOffice().getBindingsForAddress(new SimpleString("mytopic_1"));
+ assertEquals(mytopic_1.getBindings().size(), 0);
+ Bindings mytopic_2 = server.getPostOffice().getBindingsForAddress(new SimpleString("mytopic_2"));
+ assertEquals(mytopic_2.getBindings().size(), 3);
+ } finally {
+ try {
+ server.stop();
+ } catch (Exception e) {
+ }
+ }
+ }
+
+ protected ActiveMQServer getActiveMQServer(String brokerConfig) throws Exception {
+ FileConfiguration fc = new FileConfiguration();
+ FileJMSConfiguration fileConfiguration = new FileJMSConfiguration();
+ FileDeploymentManager deploymentManager = new FileDeploymentManager(brokerConfig);
+ deploymentManager.addDeployable(fc);
+ deploymentManager.addDeployable(fileConfiguration);
+ deploymentManager.readConfiguration();
+
+ ActiveMQJAASSecurityManager sm = new ActiveMQJAASSecurityManager(InVMLoginModule.class.getName(), new SecurityConfiguration());
+
+ return addServer(new ActiveMQServerImpl(fc, sm));
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/7beb3780/tests/integration-tests/src/test/resources/duplicate-queues.xml
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/resources/duplicate-queues.xml b/tests/integration-tests/src/test/resources/duplicate-queues.xml
new file mode 100644
index 0000000..00fae82
--- /dev/null
+++ b/tests/integration-tests/src/test/resources/duplicate-queues.xml
@@ -0,0 +1,104 @@
+<?xml version='1.0'?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<configuration xmlns="urn:activemq"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="urn:activemq /schema/artemis-configuration.xsd">
+
+
+ <core xmlns="urn:activemq:core">
+
+ <name>0.0.0.0</name>
+
+ <configuration-file-refresh-period>100</configuration-file-refresh-period>
+
+ <persistence-enabled>false</persistence-enabled>
+
+ <security-enabled>false</security-enabled>
+
+ <!-- this could be ASYNCIO or NIO
+ -->
+ <journal-type>NIO</journal-type>
+
+ <paging-directory>./data/paging</paging-directory>
+
+ <bindings-directory>./data/bindings</bindings-directory>
+
+ <journal-directory>./data/journal</journal-directory>
+
+ <large-messages-directory>./data/large-messages</large-messages-directory>
+
+ <journal-min-files>2</journal-min-files>
+
+ <journal-pool-files>-1</journal-pool-files>
+
+ <!--
+ This value was determined through a calculation.
+ Your system could perform 25 writes per millisecond
+ on the current journal configuration.
+ That translates as a sync write every 40000 nanoseconds
+ -->
+ <journal-buffer-timeout>40000</journal-buffer-timeout>
+
+ <addresses>
+ <address name="mytopic_2">
+ <multicast>
+ <queue name="queue.A" />
+ <queue name="queue.B" />
+ <queue name="queue.C" />
+ </multicast>
+ </address>
+ <address name="mytopic_1">
+ <multicast>
+ <queue name="queue.A" />
+ <queue name="queue.B" />
+ <queue name="queue.C" />
+ </multicast>
+ </address>
+ </addresses>
+
+
+ <security-settings>
+ <security-setting match="#">
+ <permission type="createNonDurableQueue" roles="a"/>
+ <permission type="deleteNonDurableQueue" roles="a"/>
+ <permission type="createDurableQueue" roles="a"/>
+ <permission type="deleteDurableQueue" roles="a"/>
+ <permission type="browse" roles="a"/>
+ <permission type="send" roles="a"/>
+ <!-- we need this otherwise ./artemis data imp wouldn't work -->
+ <permission type="manage" roles="a"/>
+ </security-setting>
+ </security-settings>
+
+ <address-settings>
+ <!--default for catch all-->
+ <address-setting match="#">
+ <auto-create-queues>false</auto-create-queues>
+ <dead-letter-address>DLQ</dead-letter-address>
+ <expiry-address>ExpiryQueue</expiry-address>
+ <redelivery-delay>0</redelivery-delay>
+ <max-size-bytes>10Mb</max-size-bytes>
+ <message-counter-history-day-limit>10</message-counter-history-day-limit>
+ <address-full-policy>BLOCK</address-full-policy>
+ </address-setting>
+ </address-settings>
+ </core>
+</configuration>