| <!-- |
| - |
| - 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"> |
| <modelVersion>4.0.0</modelVersion> |
| |
| <artifactId>tests</artifactId> |
| |
| <description>The Proton system tests execute against either the Java or the C implementations, based on the chosen profile. |
| |
| To execute, run either "mvn test -P proton-j" or "mvn test -P proton-jni". |
| |
| To reduce the set of Python tests run, set system property proton.pythontest.pattern, for example: |
| |
| mvn test -Dproton.pythontest.pattern='proton_tests.transport.TransportTest.*' |
| |
| The proton-jni profile looks for the JNI jar and native libraries under directory <basedir>/build/proton-c. |
| To override this, run Maven like so: "mvn test -P proton-jni -Dproton-c-build-dir=/path/to/build/dir".</description> |
| |
| <build> |
| <!-- System tests are arranged by language, hence the non-default location of the JUnit tests. --> |
| <testSourceDirectory>java</testSourceDirectory> |
| <resources> |
| <resource><directory>python</directory></resource> |
| </resources> |
| </build> |
| |
| <dependencies> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>${junit-version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.qpid</groupId> |
| <artifactId>proton-api</artifactId> |
| <version>1.0-SNAPSHOT</version> |
| </dependency> |
| <dependency> |
| <groupId>org.python</groupId> |
| <artifactId>jython-standalone</artifactId> |
| <version>2.5.3</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <profiles> |
| <profile> |
| <id>proton-j</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.qpid</groupId> |
| <artifactId>proton-j-impl</artifactId> |
| <version>1.0-SNAPSHOT</version> |
| <scope>runtime</scope> |
| </dependency> |
| </dependencies> |
| </profile> |
| <profile> |
| <id>proton-jni</id> |
| <properties> |
| <!-- Uses the JNI jar and the native libraries, neither of which are built by Maven, |
| therefore their location needs to be set explicitly in the following properties. --> |
| <proton-c-build-dir>${basedir}/../build/proton-c</proton-c-build-dir> |
| <jni-native-path>${proton-c-build-dir}:${proton-c-build-dir}/bindings/java</jni-native-path> |
| <jni-jar>${proton-c-build-dir}/bindings/java/proton-jni.jar</jni-jar> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <forkMode>once</forkMode> |
| <argLine>-Djava.library.path=${jni-native-path}</argLine> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.qpid</groupId> |
| <artifactId>proton-jni</artifactId> |
| <version>${project.parent.version}</version> |
| <scope>system</scope> |
| <systemPath>${jni-jar}</systemPath> |
| </dependency> |
| </dependencies> |
| </profile> |
| </profiles> |
| |
| <parent> |
| <groupId>org.apache.qpid</groupId> |
| <artifactId>proton-project</artifactId> |
| <version>1.0-SNAPSHOT</version> |
| </parent> |
| </project> |