<?xml version="1.0" encoding="UTF-8"?>
<!--
  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.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.apache.activemq</groupId>
    <artifactId>activemq-parent</artifactId>
    <version>5.17.2</version>
  </parent>

  <artifactId>activemq-unit-tests</artifactId>
  <name>ActiveMQ :: Unit Tests</name>
  <description>The ActiveMQ Message Broker and Client Unit Tests</description>

  <dependencies>

    <!-- =============================== -->
    <!-- Required Dependencies -->
    <!-- =============================== -->
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-spring</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-jdbc-store</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-kahadb-store</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-console</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-mqtt</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-stomp</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-partition</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-runtime-config</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-jms_1.1_spec</artifactId>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activeio-core</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.fusesource.mqtt-client</groupId>
      <artifactId>mqtt-client</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq.tooling</groupId>
      <artifactId>activemq-junit</artifactId>
    </dependency>

    <!-- =============================== -->
    <!-- Optional Dependencies           -->
    <!-- =============================== -->
    <dependency>
      <groupId>org.osgi</groupId>
      <artifactId>osgi.core</artifactId>
      <scope>provided</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.activemq</groupId>
      <artifactId>activemq-jaas</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-jta_1.1_spec</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-annotation_1.3_spec</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-jacc_1.1_spec</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>com.thoughtworks.xstream</groupId>
      <artifactId>xstream</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jettison</groupId>
      <artifactId>jettison</artifactId>
      <optional>true</optional>
    </dependency>

    <!-- for XML parsing -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.derby</groupId>
      <artifactId>derby</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.derby</groupId>
      <artifactId>derbytools</artifactId>
      <optional>true</optional>
    </dependency>

    <!-- =============================== -->
    <!-- Testing Dependencies            -->
    <!-- =============================== -->
    <dependency>
      <groupId>org.apache.qpid</groupId>
      <artifactId>qpid-jms-client</artifactId>
      <version>${qpid-jms-version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.xbean</groupId>
      <artifactId>xbean-spring</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-broker</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>hamcrest-all</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-api</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j-impl</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jms</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>javax.jmdns</groupId>
      <artifactId>jmdns</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.jasypt</groupId>
      <artifactId>jasypt</artifactId>
    </dependency>
    <dependency>
      <groupId>org.jasypt</groupId>
      <artifactId>jasypt-spring4</artifactId>
      <version>${jasypt-version}</version>
      <optional>true</optional>
    </dependency>
    <!-- database testing -->
    <dependency>
      <groupId>commons-collections</groupId>
      <artifactId>commons-collections</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>commons-primitives</groupId>
      <artifactId>commons-primitives</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>axion</groupId>
      <artifactId>axion</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>regexp</groupId>
      <artifactId>regexp</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-dbcp2</artifactId>
      <optional>true</optional>
      <scope>test</scope>
    </dependency>

    <!--  Joram JMS conformance tests -->
    <dependency>
      <groupId>org.fusesource.joram-jms-tests</groupId>
      <artifactId>joram-jms-tests</artifactId>
      <version>1.0</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <!-- using it for Jetty's JNDI context to work /w Joram tests. -->
      <groupId>org.eclipse.jetty</groupId>
      <artifactId>jetty-jndi</artifactId>
      <scope>test</scope>
    </dependency>

    <!--  LDAP tests -->
    <dependency>
      <groupId>org.apache.directory.server</groupId>
      <artifactId>apacheds-core-integ</artifactId>
      <version>${directory-version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.directory.server</groupId>
      <artifactId>apacheds-server-integ</artifactId>
      <version>${directory-version}</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.jmock</groupId>
      <artifactId>jmock-junit4</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.jmock</groupId>
      <artifactId>jmock-legacy</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymock</artifactId>
      <version>3.2</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-inline</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>${maven-javadoc-plugin-version}</version>
        <configuration>
          <!-- necessary for now under the javadocs can be fixed because jdk8 is much stricter -->
          <additionalparam>${javadoc.options}</additionalparam>
          <links>
            <link>${javase-javadoc-url}</link>
            <link>${javaee-javadoc-url}</link>
            <link>${slf4j-javadoc-url}</link>
            <link>http://junit.sourceforge.net/javadoc/</link>
          </links>
          <stylesheetfile>${basedir}/../etc/css/stylesheet.css</stylesheetfile>
          <linksource>true</linksource>
          <maxmemory>256m</maxmemory>
          <source>${source-version}</source>
          <groups>
            <group>
              <title>JMS Client</title>
              <packages>org.apache.activemq:org.apache.activemq.command</packages>
            </group>
            <group>
              <title>JMS Client support classes for working with BLOBs and JNDI</title>
              <packages>org.apache.activemq.blob:org.apache.activemq.jndi</packages>
            </group>
            <group>
              <title>Spring support</title>
              <packages>org.apache.activemq.spring:org.apache.activemq.xbean:org.apache.activemq.pool</packages>
            </group>
            <group>
              <title>JMS Client Implementation classes</title>
              <packages>org.apache.activemq.filter:org.apache.activemq.management:org.apache.activemq.selector:org.apache.activemq.thread</packages>
            </group>
            <group>
              <title>Broker implementation</title>
              <packages>org.apache.activemq.advisory:org.apache.activemq.broker:org.apache.activemq.broker.*:org.apache.activemq.state:org.apache.activemq.security:org.apache.activemq.transaction</packages>
            </group>
            <group>
              <title>Broker Persistent Store</title>
              <packages>org.apache.activemq.store:org.apache.activemq.store.*</packages>
            </group>
            <group>
              <title>Kaha fast file based storage</title>
              <packages>org.apache.activemq.kaha:org.apache.activemq.kaha.*</packages>
            </group>
            <group>
              <title>Transports</title>
              <packages>org.apache.activemq.transport:org.apache.activemq.transport.*</packages>
            </group>
            <group>
              <title>Memory handling</title>
              <packages>org.apache.activemq.memory:org.apache.activemq.memory.*</packages>
            </group>
            <group>
              <title>Networks of Brokers</title>
              <packages>org.apache.activemq.network:org.apache.activemq.network.*</packages>
            </group>
            <group>
              <title>OpenWire support</title>
              <packages>org.apache.activemq.openwire:org.apache.activemq.openwire.*</packages>
            </group>
            <group>
              <title>Utility classes</title>
              <packages>org.apache.activemq.util:org.apache.activemq.wireformat:org.apache.activemq.proxy</packages>
            </group>
          </groups>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <version>${findbugs-maven-plugin-version}</version>
        <configuration>
          <threshold>Normal</threshold>
          <effort>Default</effort>
        </configuration>
      </plugin>
    </plugins>
  </reporting>

  <build>
    <resources>
      <resource>
        <directory>${project.basedir}/src/main/resources</directory>
        <includes>
          <include>**/*</include>
        </includes>
      </resource>
      <resource>
        <directory>${project.basedir}/src/main/filtered-resources</directory>
        <filtering>true</filtering>
        <includes>
          <include>**/*</include>
        </includes>
      </resource>
    </resources>

    <plugins>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <configuration>
          <instructions>
            <Bundle-Activator>org.apache.activemq.util.osgi.Activator</Bundle-Activator>
          </instructions>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <forkCount>1</forkCount>
          <reuseForks>false</reuseForks>
          <forkedProcessTimeoutInSeconds>1200</forkedProcessTimeoutInSeconds>
          <runOrder>alphabetical</runOrder>
          <excludes>
            <!-- temporarily exclude failing tests so that CI works; fix asap and reenable -->
            <exclude>**/AMQ4092Test.java</exclude>
            <exclude>**/AMQ4607Test.java</exclude>
            <exclude>**/QueueSubscriptionTest.java</exclude>
            <exclude>**/RoundRobinDispatchPolicyTest.java</exclude>
            <exclude>**/SimpleDispatchPolicyTest.java</exclude>
          </excludes>
          <systemPropertyVariables>
            <java.net.preferIPv4Stack>true</java.net.preferIPv4Stack>
            <org.apache.activemq.default.directory.prefix>target/</org.apache.activemq.default.directory.prefix>
            <org.apache.activemq.AutoFailTestSupport.disableSystemExit>true</org.apache.activemq.AutoFailTestSupport.disableSystemExit>
            <org.apache.activemq.broker.jmx.createConnector>false</org.apache.activemq.broker.jmx.createConnector>
          </systemPropertyVariables>
          <includes>
            <include>**/*Test.*</include>
          </includes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-clean-plugin</artifactId>
        <configuration>
          <filesets>
            <fileset>
              <directory>${basedir}/activemq-data</directory>
              <directory>${basedir}/KahaDB</directory>
              <directory>${basedir}/LeveDB</directory>
              <directory>${basedir}/shared</directory>
            </fileset>
          </filesets>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <id>package</id>
            <phase>package</phase>
            <configuration>
              <target>
                <echo>Deleting unwanted resources from the test-jar</echo>
                <delete dir="${project.build.directory}/test-classes" verbose="true">
                  <include name="*.*" />
                </delete>
              </target>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <!-- generate the attached tests jar -->
      <plugin>
        <artifactId>maven-jar-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>test-jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
        <configuration>
          <check>
            <branchRate>50</branchRate>
            <lineRate>50</lineRate>
            <haltOnFailure>true</haltOnFailure>
            <totalBranchRate>50</totalBranchRate>
            <totalLineRate>50</totalLineRate>
          </check>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>activemq.tests-all</id>
      <activation>
        <property>
          <name>activemq.tests</name>
          <value>all</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <excludes combine.children="append">
                <!-- These are performance tests and take too long to run -->
                <exclude>**/perf/*</exclude>
                <!-- These are load tests and take too long to run -->
                <exclude>**/load/*</exclude>
              </excludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>activemq.tests-sanity</id>
      <activation>
        <property>
          <name>activemq.tests</name>
          <value>smoke</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <includes>
                <include>**/JMSConsumerTest.*</include>
                <include>**/MBeanTest.*</include>
                <include>**/BrokerTest.*</include>
                <include>**/JmsQueueSendReceiveTest.*</include>
                <include>**/JmsTopicRequestReplyTest.*</include>
                <include>**/AdvisoryJmxTest.*</include>
                <include>**/VirtualTopicPubSubTest.*</include>
                <include>**/RedeliveryPluginTest.*</include>
                <include>**/AMQ3014Test.*</include>
                <include>**/AMQ3678Test.*</include>
                <include>**/AMQ4222Test.*</include>
                <include>**/AMQ4899Test.*</include>
                <include>**/ActiveMQDestinationTest.*</include>
                <include>**/XAConnectionFactoryTest.*</include>
                <include>**/JDBCStoreOrderTest.*</include>
                <include>**/KahaDBPersistenceAdapterTest.*</include>
                <include>**/FailoverUriTest.*</include>
                <include>**/TransactionRollbackOrderTest.*</include>
                <include>**/StaticNetworkTest.*</include>
                <include>**/QueueBrowsingLimitTest.*</include>
                <include>**/DurableSubscriptionActivationTest.*</include>
              </includes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>activemq.tests-autoTransport</id>
      <activation>
        <property>
          <name>activemq.tests</name>
          <value>autoTransport</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <includes>
                <include>**/transport/auto/**/*Test.java</include>
              </includes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>activemq.exclude-broken-tests</id>
      <activation>
        <property>
          <name>activemq.tests</name>
          <value>excludeBroken</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <excludes combine.children="append">
                <!-- http://jira.activemq.org/jira/browse/AMQ-626 -->
                <exclude>**/MultipleTestsWithSpringFactoryBeanTest.*</exclude>
                <exclude>**/MultipleTestsWithXBeanFactoryBeanTest.*</exclude>
                <exclude>**/MultipleTestsWithSpringXBeanFactoryBeanTest.*</exclude>
                <!-- Multicast and UDP based tests fail on GBuild -->
                <exclude>**/PeerTransportTest.*</exclude>
                <exclude>**/MulticastTransportTest.*</exclude>
                <exclude>**/MulticastNetworkTest.*</exclude>
                <exclude>**/UnreliableUdpTransportTest.*</exclude>
                <exclude>**/SslTransportBrokerTest.*</exclude>
                <!-- this one is a little flaky and can fail on some platforms randomly -->
                <exclude>**/QuickJournalRecoveryBrokerTest.*</exclude>
                <exclude>**/QuickJournalXARecoveryBrokerTest.*</exclude>
                <exclude>**/ZeroconfDiscoverTransportTest.*</exclude>
                <!-- m2 tests failing since move from assembly  -->
                <exclude>**/QueueConsumerCloseAndReconnectTest.*</exclude>
                <exclude>**/TwoBrokerMulticastQueueTest.*</exclude>
                <!-- This test only works on machines which have ssh propertly configured -->
                <exclude>**/SSHTunnelNetworkReconnectTest.*</exclude>
                <!-- http://issues.apache.org/activemq/browse/AMQ-1027 -->
                <exclude>**/FailoverConsumerTest.*</exclude>
                <exclude>**/NioQueueSubscriptionTest.*/</exclude>
                <!-- A test used for memory profiling only. -->
                <exclude>**/NetworkConnectionsCleanedupTest.*/**</exclude>
                <!-- used just to test potential memory leaks manually -->
                <exclude>**/JDBCTestMemory.*</exclude>
                <exclude>**/amq1490/*</exclude>
                <exclude>**/archive/*</exclude>
                <exclude>**/NetworkFailoverTest.*/**</exclude>
                <exclude>**/broker/MarshallingBrokerTest.*</exclude>
                <exclude>**/AMQDeadlockTest3.*</exclude>
                <!-- https://issues.apache.org/activemq/browse/AMQ-2050 -->
                <exclude>**/ProxyConnectorTest.*</exclude>
                <!-- breaks hudson: disable till we get a chance to give it the time that it needs - http://hudson.zones.apache.org/hudson/job/ActiveMQ/org.apache.activemq$activemq-core/199/testReport/org.apache.activemq.network/BrokerNetworkWithStuckMessagesTest/testBrokerNetworkWithStuckMessages/ -->
                <exclude>**/BrokerNetworkWithStuckMessagesTest.*</exclude>
                <exclude>**/DoSTest.*</exclude>
                <exclude>**/StoreQueueCursorJournalNoDuplicateTest.*</exclude>
                <exclude>**/ThreeBrokerVirtualTopicNetworkAMQPATest.*</exclude>
              </excludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>activemq.tests-quick</id>
      <activation>
        <activeByDefault>true</activeByDefault>
        <property>
          <name>activemq.tests</name>
          <value>quick</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <excludes combine.children="append">
                <!-- These are performance tests and take too long to run -->
                <exclude>**/perf/*</exclude>
                <!-- These are load tests and take too long to run -->
                <exclude>**/load/*</exclude>
                <!-- These tests run too slow to execute as part of the unit tests -->
                <exclude>**/TransactionNotStartedErrorTest.*</exclude>
                <exclude>**/DefaultStoreBrokerTest.*</exclude>
                <exclude>**/TcpTransportBrokerTest.*</exclude>
                <!-- Don't run the openwire encoding tests since the test and impls are code generated -->
                <exclude>org/apache/activemq/openwire/v*/**</exclude>
                <!-- this is a list of our slowest tests (slowest on top).. disabled to bring the build down to about 30 min -->
                <exclude>org/apache/activemq/ActiveMQInputStreamTest.*</exclude>
                <exclude>org/apache/activemq/ActiveMQMessageAuditTest.*</exclude>
                <exclude>org/apache/activemq/BrokerConfigTest.*</exclude>
                <exclude>org/apache/activemq/ConsumerReceiveWithTimeoutTest.*</exclude>
                <exclude>org/apache/activemq/CreateConsumerButDontStartConnectionWarningTest.*</exclude>
                <exclude>org/apache/activemq/ExpiryHogTest.*</exclude>
                <exclude>org/apache/activemq/JmsAutoAckListenerTest.*</exclude>
                <exclude>org/apache/activemq/JmsClientAckListenerTest.*</exclude>
                <exclude>org/apache/activemq/JmsDurableTopicSelectorTest.*</exclude>
                <exclude>org/apache/activemq/JmsQueueSendReceiveTwoConnectionsStartBeforeBrokerTest.*</exclude>
                <exclude>org/apache/activemq/JmsSendReceiveWithMessageExpirationTest.*</exclude>
                <exclude>org/apache/activemq/JmsSendWithAsyncCallbackTest.*</exclude>
                <exclude>org/apache/activemq/JmsTopicSelectorTest.*</exclude>
                <exclude>org/apache/activemq/MessageEvictionTest.*</exclude>
                <exclude>org/apache/activemq/MessageListenerRedeliveryTest.*</exclude>
                <exclude>org/apache/activemq/OnePrefetchAsyncConsumerTest.*</exclude>
                <exclude>org/apache/activemq/OptimizedAckTest.*</exclude>
                <exclude>org/apache/activemq/PerDestinationStoreLimitTest.*</exclude>
                <exclude>org/apache/activemq/ProducerFlowControlSendFailTest.*</exclude>
                <exclude>org/apache/activemq/ProducerFlowControlTest.*</exclude>
                <exclude>org/apache/activemq/QueueConsumerPriorityTest.*</exclude>
                <exclude>org/apache/activemq/ReconnectWithSameClientIDTest.*</exclude>
                <exclude>org/apache/activemq/RemoveDestinationTest.*</exclude>
                <exclude>org/apache/activemq/TimeStampTest.*</exclude>
                <exclude>org/apache/activemq/advisory/DestinationListenerTest.*</exclude>
                <exclude>org/apache/activemq/advisory/MasterSlaveTempQueueMemoryTest.*</exclude>
                <exclude>org/apache/activemq/advisory/TempDestLoadTest.*</exclude>
                <exclude>org/apache/activemq/advisory/TempQueueMemoryTest.*</exclude>
                <exclude>org/apache/activemq/blob/FilesystemBlobTest.*</exclude>
                <exclude>org/apache/activemq/broker/DoubleSubscriptionTest.*</exclude>
                <exclude>org/apache/activemq/broker/JdbcXARecoveryBrokerTest.*</exclude>
                <exclude>org/apache/activemq/broker/QueueMbeanRestartTest.*</exclude>
                <exclude>org/apache/activemq/broker/ReconnectWithJMXEnabledTest.*</exclude>
                <exclude>org/apache/activemq/broker/RecoveryBrokerTest.*</exclude>
                <exclude>org/apache/activemq/broker/RedeliveryRestartTest.*</exclude>
                <exclude>org/apache/activemq/broker/SpringTest.*</exclude>
                <exclude>org/apache/activemq/broker/XARecoveryBrokerTest.*</exclude>
                <exclude>org/apache/activemq/broker/advisory/AdvisoryDuplexNetworkBridgeTest.*</exclude>
                <exclude>org/apache/activemq/broker/advisory/AdvisoryNetworkBridgeTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/DbRestartJDBCQueueMasterSlaveTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/DbRestartJDBCQueueTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/JDBCQueueMasterSlaveTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/MasterSlaveProducerFlowControlTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/MasterSlaveSlaveDieTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/MasterSlaveSlaveShutdownTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/QueueMasterSlaveSingleUrlTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/QueueMasterSlaveTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/QueueMasterSlaveTestUsingSharedFileTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/QueueMasterSlaveUsingMasterConnectorElementCompositeQueueTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/QueueMasterSlaveUsingMasterConnectorElementTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/TopicMasterSlaveTest.*</exclude>
                <exclude>org/apache/activemq/broker/ft/TransactedTopicMasterSlaveTest.*</exclude>
                <exclude>org/apache/activemq/broker/jmx/MBeanTest.*</exclude>
                <exclude>org/apache/activemq/broker/jmx/PurgeTest.*</exclude>
                <exclude>org/apache/activemq/broker/mKahaDBXARecoveryBrokerTest.*</exclude>
                <exclude>org/apache/activemq/broker/KahaDBXARecoveryBrokerTest.*</exclude>
                <exclude>org/apache/activemq/broker/policy/AbortSlowConsumerTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/DestinationGCTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/DestinationRemoveRestartTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/QueueDuplicatesFromStoreTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/UniquePropertyMessageEvictionStrategyTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/cursors/CursorDurableTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/cursors/CursorQueueStoreTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/cursors/FilePendingMessageCursorTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/cursors/NegativeQueueTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/cursors/StoreBasedCursorTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/cursors/StoreQueueCursorJDBCNoDuplicateTest.*</exclude>
                <exclude>org/apache/activemq/broker/region/QueuePurgeTest.*</exclude>
                <exclude>org/apache/activemq/broker/scheduler/JmsSchedulerTest.*</exclude>
                <exclude>org/apache/activemq/broker/scheduler/JmsCronSchedulerTest.*</exclude>
                <exclude>org/apache/activemq/broker/scheduler/JmsSchedulerTest.*</exclude>
                <exclude>org/apache/activemq/broker/scheduler/JobSchedulerManagementTest.*</exclude>
                <exclude>org/apache/activemq/broker/scheduler/JobSchedulerStoreTest.*</exclude>
                <exclude>org/apache/activemq/broker/scheduler/JobSchedulerTest.*</exclude>
                <exclude>org/apache/activemq/broker/store/DefaultStoreRecoveryBrokerTest.*</exclude>
                <exclude>org/apache/activemq/broker/store/RecoverExpiredMessagesTest.*</exclude>
                <exclude>org/apache/activemq/broker/util/PluginBrokerTest.*</exclude>
                <exclude>org/apache/activemq/broker/util/TraceBrokerPathPluginTest.*</exclude>
                <exclude>org/apache/activemq/broker/virtual/CompositeTopicTest.*</exclude>
                <exclude>org/apache/activemq/broker/virtual/FilteredQueueTest.*</exclude>
                <exclude>org/apache/activemq/broker/virtual/MirroredQueueCorrectMemoryUsageTest.*</exclude>
                <exclude>org/apache/activemq/broker/virtual/VirtualTopicDLQTest.*</exclude>
                <exclude>org/apache/activemq/broker/virtual/VirtualTopicDisconnectSelectorTest.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ1687Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ1853Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ1893Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ1917Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ1936Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2021Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2084Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2149KahaDBTest.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2149Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2171Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2183Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2200Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2213Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2314Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2356Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2364Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2401Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2413Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2439Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2489Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2512Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2513Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2580Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2584ConcurrentDlqTest.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2584Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2616Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2645Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2751Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2764Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2832Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2870Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2910Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2982Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ2983Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3120Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3140Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3141Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3145Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3157Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3167Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3274Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3324Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3352Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3405Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3436Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3445Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3454Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3529Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3567Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3622Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3625Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3674Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3675Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3678Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3732Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ3841Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ4221Test.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ4677Test.*</exclude>
                <exclude>org/apache/activemq/bugs/ActiveMQSlowConsumerManualTest.*</exclude>
                <exclude>org/apache/activemq/bugs/ConnectionPerMessageTest.*</exclude>
                <exclude>org/apache/activemq/bugs/CraigsBugTest.*</exclude>
                <exclude>org/apache/activemq/bugs/DataFileNotDeletedTest.*</exclude>
                <exclude>org/apache/activemq/bugs/DoubleExpireTest.*</exclude>
                <exclude>org/apache/activemq/bugs/DurableConsumerTest.*</exclude>
                <exclude>org/apache/activemq/bugs/JMSDurableTopicNoLocalTest.*</exclude>
                <exclude>org/apache/activemq/bugs/JmsDurableTopicSlowReceiveTest.*</exclude>
                <exclude>org/apache/activemq/bugs/JmsTimeoutTest.*</exclude>
                <exclude>org/apache/activemq/bugs/MemoryUsageBlockResumeTest.*</exclude>
                <exclude>org/apache/activemq/bugs/MemoryUsageCleanupTest.*</exclude>
                <exclude>org/apache/activemq/bugs/MessageExpirationReaperTest.*</exclude>
                <exclude>org/apache/activemq/bugs/MissingDataFileTest.*</exclude>
                <exclude>org/apache/activemq/bugs/QueueWorkerPrefetchTest.*</exclude>
                <exclude>org/apache/activemq/bugs/SlowConsumerTest.*</exclude>
                <exclude>org/apache/activemq/bugs/SparseAckReplayAfterStoreCleanupAMQStoreTest.*</exclude>
                <exclude>org/apache/activemq/bugs/TempStorageBlockedBrokerTest.*</exclude>
                <exclude>org/apache/activemq/bugs/TempStoreDataCleanupTest.*</exclude>
                <exclude>org/apache/activemq/bugs/VMTransportClosureTest.*</exclude>
                <exclude>org/apache/activemq/bugs/amq1095/MessageSelectorTest.*</exclude>
                <exclude>org/apache/activemq/command/MessageCompressionTest.*</exclude>
                <exclude>org/apache/activemq/config/BrokerXmlConfigFromJNDITest.*</exclude>
                <exclude>org/apache/activemq/config/ConfigTest.*</exclude>
                <exclude>org/apache/activemq/console/command/AMQJournalToolTest.*</exclude>
                <exclude>org/apache/activemq/console/command/TestAMQ3410.*</exclude>
                <exclude>org/apache/activemq/console/command/TestAMQ3411.*</exclude>
                <exclude>org/apache/activemq/console/command/TestPurgeCommand.*</exclude>
                <exclude>org/apache/activemq/kaha/LoadTest.*</exclude>
                <exclude>org/apache/activemq/kaha/impl/index/hash/HashTest.*</exclude>
                <exclude>org/apache/activemq/network/DemandForwardingBridgeFilterTest.*</exclude>
                <exclude>org/apache/activemq/network/DuplexNetworkMBeanTest.*</exclude>
                <exclude>org/apache/activemq/network/DuplexNetworkTest.*</exclude>
                <exclude>org/apache/activemq/network/FailoverStaticNetworkTest.*</exclude>
                <exclude>org/apache/activemq/network/NetworkBrokerDetachTest.*</exclude>
                <exclude>org/apache/activemq/network/NetworkConnectionsTest.*</exclude>
                <exclude>org/apache/activemq/network/NetworkLoadTest.*</exclude>
                <exclude>org/apache/activemq/network/NetworkReconnectTest.*</exclude>
                <exclude>org/apache/activemq/network/NetworkRemovesSubscriptionsTest.*</exclude>
                <exclude>org/apache/activemq/network/NetworkRestartPlainTest.*</exclude>
                <exclude>org/apache/activemq/network/NetworkRestartTest.*</exclude>
                <exclude>org/apache/activemq/network/SimpleNetworkTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/QueueBridgeStandaloneReconnectTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/QueueBridgeTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/QueueBridgeXBeanTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/QueueOutboundBridgeReconnectTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/TopicBridgeSpringTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/TopicBridgeStandaloneReconnectTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/TopicBridgeXBeanTest.*</exclude>
                <exclude>org/apache/activemq/network/jms/TopicOutboundBridgeReconnectTest.*</exclude>
                <exclude>org/apache/activemq/plugin/BrokerStatisticsPluginTest.*</exclude>
                <exclude>org/apache/activemq/pool/ConnectionExpiryEvictsFromPoolTest.*</exclude>
                <exclude>org/apache/activemq/pool/PooledConnectionFactoryMaximumActiveTest.*</exclude>
                <exclude>org/apache/activemq/pool/PooledConnectionFactoryTest.*</exclude>
                <exclude>org/apache/activemq/proxy/ProxyFailoverTest.*</exclude>
                <exclude>org/apache/activemq/ra/FailoverManagedClusterTest.*</exclude>
                <exclude>org/apache/activemq/ra/FailoverManagedConnectionTest.*</exclude>
                <exclude>org/apache/activemq/security/JaasNetworkTest.*</exclude>
                <exclude>org/apache/activemq/security/LDAPSecurityTest.*</exclude>
                <exclude>org/apache/activemq/security/SecurityJMXTest.*</exclude>
                <exclude>org/apache/activemq/security/XBeanSecurityWithGuestNoCredentialsOnlyTest.*</exclude>
                <exclude>org/apache/activemq/security/XBeanSslContextTest.*</exclude>
                <exclude>org/apache/activemq/spring/ListenerTest.*</exclude>
                <exclude>org/apache/activemq/spring/ParallelXATransactionTest.*</exclude>
                <exclude>org/apache/activemq/spring/Spring2XmlNamespacesTest.*</exclude>
                <exclude>org/apache/activemq/spring/Spring2XmlNamespacesWithoutRemoteSchemaTest.*</exclude>
                <exclude>org/apache/activemq/store/AutoStorePerDestinationTest.*</exclude>
                <exclude>org/apache/activemq/store/StorePerDestinationTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCCommitExceptionTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCMessagePriorityTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCNegativeQueueTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCNetworkBrokerDetachTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCPersistenceAdapterTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCStoreBrokerTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCStoreOrderTest.*</exclude>
                <exclude>org/apache/activemq/store/jdbc/JDBCXACommitExceptionTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/KahaDBFastEnqueueTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/KahaDBMessagePriorityTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/KahaDBStoreRecoveryBrokerTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/KahaDBStoreRecoveryExpiryTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/KahaDBStoreTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/KahaDBTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/KahaDBVersionTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/plist/PListTest.*</exclude>
                <exclude>org/apache/activemq/test/JmsTopicSendReceiveWithEmbeddedBrokerAndUserIDTest.*</exclude>
                <exclude>org/apache/activemq/test/JmsTopicSendReceiveWithTwoConnectionsAndEmbeddedBrokerTest.*</exclude>
                <exclude>org/apache/activemq/test/message/NestedMapAndListPropertyTest.*</exclude>
                <exclude>org/apache/activemq/test/message/NestedMapMessageTest.*</exclude>
                <exclude>org/apache/activemq/test/rollback/RollbacksWhileConsumingLargeQueueTest.*</exclude>
                <exclude>org/apache/activemq/transport/QueueClusterTest.*</exclude>
                <exclude>org/apache/activemq/transport/SoWriteTimeoutClientTest.*</exclude>
                <exclude>org/apache/activemq/transport/SoWriteTimeoutTest.*</exclude>
                <exclude>org/apache/activemq/transport/TopicClusterTest.*</exclude>
                <exclude>org/apache/activemq/transport/discovery/DiscoveryNetworkReconnectTest.*</exclude>
                <exclude>org/apache/activemq/transport/discovery/DiscoveryTransportBrokerTest.*</exclude>
                <exclude>org/apache/activemq/transport/discovery/DiscoveryTransportNoBrokerTest.*</exclude>
                <exclude>org/apache/activemq/transport/discovery/DiscoveryUriTest.*</exclude>
                <exclude>org/apache/activemq/transport/discovery/MasterSlaveDiscoveryTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/AMQ1925Test.*</exclude>
                <exclude>org/apache/activemq/transport/failover/ConnectionHangOnStartupTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverClusterTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverComplexClusterTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverConsumerOutstandingCommitTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverConsumerUnconsumedTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverDuplicateTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverPrefetchZeroTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverPriorityTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverRandomTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverRedeliveryTransactionTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverTimeoutTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverTransactionTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverTransportBackupsTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverTransportBrokerTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/FailoverUpdateURIsTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/InitalReconnectDelayTest.*</exclude>
                <exclude>org/apache/activemq/transport/failover/ReconnectTest.*</exclude>
                <exclude>org/apache/activemq/transport/fanout/FanoutTest.*</exclude>
                <exclude>org/apache/activemq/transport/fanout/FanoutTransportBrokerTest.*</exclude>
                <exclude>org/apache/activemq/transport/http/HttpClientReconnectTest.*</exclude>
                <exclude>org/apache/activemq/transport/http/HttpJmsDurableTopicSendReceiveTest.*</exclude>
                <exclude>org/apache/activemq/transport/http/HttpPersistentSendAndReceiveTest.*</exclude>
                <exclude>org/apache/activemq/transport/http/HttpSpringTest.*</exclude>
                <exclude>org/apache/activemq/transport/mqtt/MQTTTest.*</exclude>
                <exclude>org/apache/activemq/transport/mqtt/MTQQNioTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/ConnectTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/Stomp11Test.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompAdvisoryTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompLoadTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompNIOLoadTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompNIOSSLLoadTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompNIOSSLTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompNIOTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompSSLLoadTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompSslAuthTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompSslTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompSubscriptionRemoveTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompTelnetTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompTest.*</exclude>
                <exclude>org/apache/activemq/transport/stomp/StompVirtualTopicTest.*</exclude>
                <exclude>org/apache/activemq/transport/tcp/InactivityMonitorTest.*</exclude>
                <exclude>org/apache/activemq/transport/tcp/SslBrokerServiceTest.*</exclude>
                <exclude>org/apache/activemq/transport/tcp/SslContextBrokerServiceTest.*</exclude>
                <exclude>org/apache/activemq/transport/tcp/SslContextNBrokerServiceTest.*</exclude>
                <exclude>org/apache/activemq/transport/vm/VMTransportBrokerNameTest.*</exclude>
                <exclude>org/apache/activemq/transport/vm/VMTransportWaitForTest.*</exclude>
                <exclude>org/apache/activemq/transport/vm/VmTransportNetworkBrokerTest.*</exclude>
                <exclude>org/apache/activemq/usage/StoreUsageTest.*</exclude>
                <exclude>org/apache/activemq/usecases/AMQ2927Test.*</exclude>
                <exclude>org/apache/activemq/usecases/AMQStackOverFlowTest.*</exclude>
                <exclude>org/apache/activemq/usecases/AMQStoreDurableSubscriptionTest.*</exclude>
                <exclude>org/apache/activemq/usecases/AdvisoryTopicCleanUpTest.*</exclude>
                <exclude>org/apache/activemq/usecases/BrowseOverNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ClientRebalanceTest.*</exclude>
                <exclude>org/apache/activemq/usecases/CompositePublishTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ConcurrentDestinationCreationTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ConcurrentProducerDurableConsumerTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ConcurrentProducerQueueConsumerTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ConsumeUncompressedCompressedMessageTest.*</exclude>
                <exclude>org/apache/activemq/usecases/CreateLotsOfTemporaryQueuesTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DiscriminatingConsumerLoadTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DispatchMultipleConsumersTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableConsumerCloseAndReconnectTcpTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableConsumerCloseAndReconnectTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubDelayedUnsubscribeTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubProcessMultiRestartTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubProcessTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubSelectorDelayTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubSelectorDelayWithRestartTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriberNonPersistentMessageTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriberWithNetworkDisconnectTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriptionActivationTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriptionOfflineTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriptionReactivationTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriptionRemoveOfflineTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriptionSelectorTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableSubscriptionUnsubscribeTest.*</exclude>
                <exclude>org/apache/activemq/usecases/DurableUnsubscribeTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ExpiredMessagesTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ExpiredMessagesWithNoConsumerTest.*</exclude>
                <exclude>org/apache/activemq/usecases/JDBCDurableSubscriptionTest.*</exclude>
                <exclude>org/apache/activemq/usecases/JMXRemoveQueueThenSendIgnoredTest.*</exclude>
                <exclude>org/apache/activemq/usecases/JdbcDurableSubDupTest.*</exclude>
                <exclude>org/apache/activemq/usecases/JournalDurableSubscriptionTest.*</exclude>
                <exclude>org/apache/activemq/usecases/KahaDBDurableSubscriptionTest.*</exclude>
                <exclude>org/apache/activemq/usecases/LargeQueueSparseDeleteTest.*</exclude>
                <exclude>org/apache/activemq/usecases/MessageGroupCloseTest.*</exclude>
                <exclude>org/apache/activemq/usecases/MessageGroupDelayedTest.*</exclude>
                <exclude>org/apache/activemq/usecases/MessageGroupNewConsumerTest.*</exclude>
                <exclude>org/apache/activemq/usecases/MessageReroutingTest.*</exclude>
                <exclude>org/apache/activemq/usecases/MultiBrokersMultiClientsTest.*</exclude>
                <exclude>org/apache/activemq/usecases/MultiBrokersMultiClientsUsingTcpTest.*</exclude>
                <exclude>org/apache/activemq/usecases/MulticastDiscoveryOnFaultyNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/NetworkAsyncStartTest.*</exclude>
                <exclude>org/apache/activemq/usecases/NetworkBridgeProducerFlowControlTest.*</exclude>
                <exclude>org/apache/activemq/usecases/NetworkOfTwentyBrokersTest.*</exclude>
                <exclude>org/apache/activemq/usecases/NoDuplicateOnTopicNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/NonBlockingConsumerRedeliveryTest.*</exclude>
                <exclude>org/apache/activemq/usecases/PublishOnQueueConsumedMessageInTransactionTest.*</exclude>
                <exclude>org/apache/activemq/usecases/PublishOnQueueConsumedMessageUsingActivemqXMLTest.*</exclude>
                <exclude>org/apache/activemq/usecases/PublishOnTopicConsumedMessageTest.*</exclude>
                <exclude>org/apache/activemq/usecases/PublishOnTopicConsumerMessageUsingActivemqXMLTest.*</exclude>
                <exclude>org/apache/activemq/usecases/QueueDuplicatesTest.*</exclude>
                <exclude>org/apache/activemq/usecases/QueueMemoryFullMultiBrokersTest.*</exclude>
                <exclude>org/apache/activemq/usecases/QueueRedeliverTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ReliableReconnectTest.*</exclude>
                <exclude>org/apache/activemq/usecases/RequestReplyNoAdvisoryNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/SingleBrokerVirtualDestinationsWithWildcardTest.*</exclude>
                <exclude>org/apache/activemq/usecases/StartAndStopBrokerTest.*</exclude>
                <exclude>org/apache/activemq/usecases/StartAndStopClientAndBrokerDoesNotLeaveThreadsRunningTest.*</exclude>
                <exclude>org/apache/activemq/usecases/StaticNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TempTopicProducerFlowControlTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerQueueNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerQueueNetworkUsingTcpTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerStompTemporaryQueueTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerTempQueueNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerTopicNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerTopicNetworkUsingTcpTest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerVirtualTopicNetworkAMQPATest.*</exclude>
                <exclude>org/apache/activemq/usecases/ThreeBrokerVirtualTopicNetworkTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TopicProducerFlowControlTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TopicRedeliverTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TopicReplicationTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TopicSubscriptionSlowConsumerTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TransientQueueRedeliverTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerMessageNotSentToRemoteWhenNoConsumerTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerNetworkConnectorWildcardDynamicallyIncludedDestinationTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerNetworkConnectorWildcardStaticallyIncludedDestinationTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerNetworkLoadBalanceTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerQueueClientsReconnectTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerQueueSendReceiveTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerTempQueueAdvisoryTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerTopicSendReceiveLotsOfMessagesUsingTcpTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerTopicSendReceiveTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerTopicSendReceiveUsingJavaConfigurationTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerTopicSendReceiveUsingTcpTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoBrokerVirtualDestDinamicallyIncludedDestTest.*</exclude>
                <exclude>org/apache/activemq/usecases/TwoMulticastDiscoveryBrokerTopicSendReceiveTest.*</exclude>
                <exclude>org/apache/activemq/usecases/UnlimitedEnqueueTest.*</exclude>
                <exclude>org/apache/activemq/util/DataByteArrayInputStreamTest.*</exclude>
                <exclude>org/apache/activemq/util/HttpBlobTest.*</exclude>
                <exclude>org/apache/activemq/util/LRUCacheTest.*</exclude>
                <exclude>org/apache/activemq/web/AjaxTest.*</exclude>
                <exclude>org/apache/activemq/web/RestTest.*</exclude>
                <exclude>org/apache/activemq/xbean/ConnectorXBeanConfigTest.*</exclude>
                <exclude>org/apache/activemq/xbean/JDBCPersistenceXBeanConfigTest.*</exclude>
                <exclude>org/apache/activemq/xbean/XBeanXmlTest.*</exclude>
                <exclude>org/apache/bugs/AMQ1730Test.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/bugs/LoadBalanceTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/disk/index/BTreeIndexTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/disk/index/HashIndexTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/disk/index/ListIndexTest.*</exclude>
                <exclude>org/apache/activemq/store/kahadb/disk/util/DataByteArrayInputStreamTest.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ5266StarvedConsumerTest.*</exclude>
                <exclude>org/apache/activemq/bugs/AMQ5266Test.*</exclude>

                <!--Broken tests -->
                <exclude>**/NetworkFailoverTest.*/**</exclude>
                <!-- This test only works on machines which have ssh properly configured -->
                <exclude>**/SSHTunnelNetworkReconnectTest.*</exclude>
              </excludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
      <profile>
          <id>activemq.tests.windows.excludes</id>
          <activation>
              <os>
                  <family>Windows</family>
              </os>
          </activation>
          <build>
              <plugins>
                  <plugin>
                      <artifactId>maven-surefire-plugin</artifactId>
                      <configuration>
                          <excludes combine.children="append">
                              <exclude>**/QueueMasterSlaveSingleUrlTest.*</exclude>
                          </excludes>
                      </configuration>
                  </plugin>
              </plugins>
          </build>
      </profile>
      <profile>
          <id>activemq.tests.aix.excludes</id>
          <activation>
              <property>
                  <name>os.name</name>
                  <value>AIX</value>
              </property>
          </activation>
          <build>
              <plugins>
                  <plugin>
                      <artifactId>maven-surefire-plugin</artifactId>
                      <configuration>
                          <excludes combine.children="append">   <!-- See https://issues.apache.org/jira/browse/AMQ-4296 -->
                              <exclude>**/QueueMasterSlaveSingleUrlTest.*</exclude>
                              <exclude>**/AMQ1866.*</exclude>
                              <exclude>**/AMQ2149Test.*</exclude>
                              <exclude>**/AMQ2584Test.*</exclude>
                              <exclude>**/ExpiredMessagesTest.*</exclude>
                              <exclude>**/ManagedDurableSubscriptionTest.*</exclude>
                              <exclude>**/ThreeBrokerVirtualTopicNetworkAMQPATest.*</exclude>
                              <exclude>**/ConcurrentProducerDurableConsumerTest.*</exclude>  <!-- AIX only -->
                              <exclude>**/ConcurrentProducerQueueConsumerTest.*</exclude>    <!-- AIX only -->
                          </excludes>
                      </configuration>
                  </plugin>
              </plugins>
          </build>
      </profile>
      <profile>
          <id>activemq.tests.solaris.excludes</id>
          <activation>
              <property>
                  <name>os.name</name>
                  <value>SunOS</value>
              </property>
          </activation>
          <build>
              <plugins>
                  <plugin>
                      <artifactId>maven-surefire-plugin</artifactId>
                      <configuration>
                          <excludes combine.children="append">
                              <exclude>**/QueueMasterSlaveSingleUrlTest.*</exclude>
                              <exclude>**/AMQ2149Test.*</exclude>
                              <exclude>**/AMQ2584Test.*</exclude>
                              <exclude>**/ExpiredMessagesTest.*</exclude>
                              <exclude>**/ManagedDurableSubscriptionTest.*</exclude>
                              <exclude>**/ThreeBrokerVirtualTopicNetworkAMQPATest.*</exclude>
                              <!-- These are performance tests and take too long to run -->
                              <exclude>**/perf/*</exclude>
                              <!-- These are load tests and take too long to run -->
                              <exclude>**/load/*</exclude>
                          </excludes>
                      </configuration>
                  </plugin>
              </plugins>
          </build>
      </profile>
      <profile>
          <id>activemq.tests.hpux.excludes</id>
          <activation>
              <os>
                  <family>HP-UX</family>
              </os>
          </activation>
          <build>
              <plugins>
                  <plugin>
                      <artifactId>maven-surefire-plugin</artifactId>
                      <configuration>
                          <excludes combine.children="append">
                              <exclude>**/QueueMasterSlaveSingleUrlTest.*</exclude>
                              <exclude>**/AMQ2149Test.*</exclude>
                              <exclude>**/AMQ2584Test.*</exclude>
                              <exclude>**/ExpiredMessagesTest.*</exclude>
                              <exclude>**/ManagedDurableSubscriptionTest.*</exclude>
                              <exclude>**/ThreeBrokerVirtualTopicNetworkAMQPATest.*</exclude>
                              <!-- These are performance tests and take too long to run -->
                              <exclude>**/perf/*</exclude>
                              <!-- These are load tests and take too long to run -->
                              <exclude>**/load/*</exclude>
                          </excludes>
                      </configuration>
                  </plugin>
              </plugins>
          </build>
      </profile>
  </profiles>
</project>
