blob: 9e1f8afb8a357e9d7f3c20c75cb6f22c3322f976 [file] [log] [blame]
<?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/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>qpid-broker-parent</artifactId>
<groupId>org.apache.qpid</groupId>
<version>7.1.6-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>joramtests</artifactId>
<name>Apache Qpid Joram JMS Tests</name>
<description>Integration test suite utilising the Joram JMS test suite.</description>
<properties>
<joram-jms-tests-version>1.0</joram-jms-tests-version>
<qpid-amqp-1-0-client-jms-version>0.32</qpid-amqp-1-0-client-jms-version>
<joramtests.broker-hostport>localhost:5672</joramtests.broker-hostport>
<joramtests.broker-virtualhostnode>default</joramtests.broker-virtualhostnode>
<joramtests.broker-virtualhost>default</joramtests.broker-virtualhost>
<joramtests.manangement-url>http://localhost:8080</joramtests.manangement-url>
<joramtests.manangement-username>guest</joramtests.manangement-username>
<joramtests.manangement-password>guest</joramtests.manangement-password>
<joramtests.manangement-api-queue>/api/latest/queue/%s/%s/%s</joramtests.manangement-api-queue>
<joramtests.manangement-api-topic>/api/latest/exchange/%s/%s/%s</joramtests.manangement-api-topic>
</properties>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.fusesource.joram-jms-tests</groupId>
<artifactId>joram-jms-tests</artifactId>
<version>${joram-jms-tests-version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
<configuration>
<dependenciesToScan>
<dependency>org.fusesource.joram-jms-tests:joram-jms-tests</dependency>
</dependenciesToScan>
<systemPropertyVariables>
<java.naming.factory.initial>${java.naming.factory.initial}</java.naming.factory.initial>
<java.naming.provider.url>${java.naming.provider.url}</java.naming.provider.url>
<joramtests.manangement-url>${joramtests.manangement-url}</joramtests.manangement-url>
<joramtests.broker-virtualhostnode>${joramtests.broker-virtualhostnode}</joramtests.broker-virtualhostnode>
<joramtests.broker-virtualhost>${joramtests.broker-virtualhost}</joramtests.broker-virtualhost>
<joramtests.manangement-url>${joramtests.manangement-url}</joramtests.manangement-url>
<joramtests.manangement-username>${joramtests.manangement-username}</joramtests.manangement-username>
<joramtests.manangement-password>${joramtests.manangement-password}</joramtests.manangement-password>
<joramtests.manangement-api-queue>${joramtests.manangement-api-queue}</joramtests.manangement-api-queue>
<joramtests.manangement-api-topic>${joramtests.manangement-api-topic}</joramtests.manangement-api-topic>
<qpid.amqp.version>${qpid.amqp.version}</qpid.amqp.version>
<!-- Used to configure logback -->
<joramtest.output-directory>${project.build.directory}</joramtest.output-directory>
</systemPropertyVariables>
<includes>
<include>%regex[.*Test.*]</include>
</includes>
<excludesFile>${joramtests.profile-excludes}</excludesFile>
<skipTests>true</skipTests>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>output-test-properties</id>
<phase>validate</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<echo>Joram Integration Tests: To run define system property -Djoramtests to a name of a JMS client e.g. qpid-jms-client</echo>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<delimiters>
<delimiter>${*}</delimiter>
</delimiters>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
</plugins>
<testResources>
<testResource>
<directory>src/test/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/*</include>
</includes>
</testResource>
</testResources>
</build>
<profiles>
<profile>
<id>addJms11IfNecessary</id>
<activation>
<property>
<name>joramtests</name>
<value>!qpid-jms-client</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jms_1.1_spec</artifactId>
</dependency>
</dependencies>
</profile>
<profile>
<id>joram</id>
<activation>
<property>
<name>joramtests</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<skipTests>false</skipTests>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-property</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireProperty>
<property>joramtests</property>
<regex>^(qpid-amqp-1-0-client-jms)|(qpid-jms-client)|(jms-client-0-9)|(jms-client-0-10)$</regex>
</requireProperty>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!-- Profile used to execute Joram tests against the AMQP 1.0 (POC) client -->
<id>qpid-amqp-1-0-client-jms</id>
<activation>
<property>
<name>joramtests</name>
<value>qpid-amqp-1-0-client-jms</value>
</property>
</activation>
<properties>
<java.naming.factory.initial>org.apache.qpid.amqp_1_0.jms.jndi.PropertiesFileInitialContextFactory</java.naming.factory.initial>
<java.naming.provider.url>${project.build.directory}/test-classes/qpid-amqp-1-0-client-jms/jndi.properties</java.naming.provider.url>
<joramtests.profile-excludes>${project.build.directory}/test-classes/qpid-amqp-1-0-client-jms/surefire.excludes</joramtests.profile-excludes>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-amqp-1-0-client-jms</artifactId>
<version>${qpid-amqp-1-0-client-jms-version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
</profile>
<profile>
<!-- Profile used to execute Joram tests against the Qpid JMS client -->
<id>qpid-jms-client</id>
<activation>
<property>
<name>joramtests</name>
<value>qpid-jms-client</value>
</property>
</activation>
<properties>
<java.naming.factory.initial>org.apache.qpid.jms.jndi.JmsInitialContextFactory</java.naming.factory.initial>
<java.naming.provider.url>${project.build.directory}/test-classes/qpid-jms-client/jndi.properties</java.naming.provider.url>
<joramtests.profile-excludes>${project.build.directory}/test-classes/qpid-jms-client/surefire.excludes</joramtests.profile-excludes>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-jms-client</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
</profile>
<profile>
<!-- Profile used to execute Joram tests against the Old JMS client for 0-8..0-91 -->
<id>jms-client-0-9</id>
<activation>
<property>
<name>joramtests</name>
<value>jms-client-0-9</value>
</property>
</activation>
<properties>
<java.naming.factory.initial>org.apache.qpid.jndi.PropertiesFileInitialContextFactory</java.naming.factory.initial>
<java.naming.provider.url>${project.build.directory}/test-classes/jms-client/jndi.properties</java.naming.provider.url>
<joramtests.profile-excludes>${project.build.directory}/test-classes/jms-client/surefire.excludes</joramtests.profile-excludes>
<qpid.amqp.version>0-9</qpid.amqp.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-client</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
</profile>
<profile>
<!-- Profile used to execute Joram tests against the Old JMS client for 0-10-->
<id>jms-client-0-10</id>
<activation>
<property>
<name>joramtests</name>
<value>jms-client-0-10</value>
</property>
</activation>
<properties>
<java.naming.factory.initial>org.apache.qpid.jndi.PropertiesFileInitialContextFactory</java.naming.factory.initial>
<java.naming.provider.url>${project.build.directory}/test-classes/jms-client/jndi.properties</java.naming.provider.url>
<qpid.amqp.version>0-10</qpid.amqp.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-client</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
</profile>
</profiles>
</project>