8d4a97e05b
Motivation: So far, we generated and deployed test JARs to Maven repositories. The deployed JAR had the classifier 'test-jar'. The test JAR is consumed by transport-native-epoll as a test dependency. The problem is, when netty-transport-native-epoll pulls the test JAR as a dependency, that Maven resolves its transitive dependencies at 'compile' and 'runtime' scope only, which is incorrect. I was bitten by this problem recently while trying to add a new dependency to netty-testsuite. Because I added a new dependency at the 'test' scope, the new dependency was not pulled transitively by transport-native-epoll and caused an unexpected build failure. -d6160208c3
-bf77bb4c3a
Modifications: - Move all classes in netty-testsuite from src/test to src/main - Update the 'compile' scope dependencies of netty-testsuite - Override the test directory configuration properties of the surefire plugin - Do not generate the test JAR anymore - Update the dependency of netty-transport-native-epoll Result: It is less error-prone to add a new dependency to netty-testsuite.
157 lines
4.8 KiB
XML
157 lines
4.8 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
~ Copyright 2012 The Netty Project
|
|
~
|
|
~ The Netty Project 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>io.netty</groupId>
|
|
<artifactId>netty-parent</artifactId>
|
|
<version>4.1.0.Beta4-SNAPSHOT</version>
|
|
</parent>
|
|
|
|
<artifactId>netty-testsuite</artifactId>
|
|
<packaging>jar</packaging>
|
|
|
|
<name>Netty/Testsuite</name>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>${project.groupId}</groupId>
|
|
<artifactId>netty-transport-sctp</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>${project.groupId}</groupId>
|
|
<artifactId>netty-handler</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>${project.groupId}</groupId>
|
|
<artifactId>netty-codec-http</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.netty</groupId>
|
|
<artifactId>netty-transport-udt</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>${project.groupId}</groupId>
|
|
<artifactId>netty-tcnative</artifactId>
|
|
<classifier>${os.detected.classifier}</classifier>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
|
|
<!-- Required for generating a compressed heap dump file -->
|
|
<dependency>
|
|
<groupId>org.tukaani</groupId>
|
|
<artifactId>xz</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Testing frameworks and related dependencies -->
|
|
<!-- NOTE: Keep these dependencies in sync with the parent POM's common test dependencies. -->
|
|
<dependency>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.hamcrest</groupId>
|
|
<artifactId>hamcrest-library</artifactId>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.easymock</groupId>
|
|
<artifactId>easymock</artifactId>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.easymock</groupId>
|
|
<artifactId>easymockclassextension</artifactId>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.jmock</groupId>
|
|
<artifactId>jmock-junit4</artifactId>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-classic</artifactId>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<properties>
|
|
<skipAutobahnTestsuite>false</skipAutobahnTestsuite>
|
|
</properties>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>skipTests</id>
|
|
<activation>
|
|
<property>
|
|
<name>skipTests</name>
|
|
</property>
|
|
</activation>
|
|
<properties>
|
|
<skipAutobahnTestsuite>true</skipAutobahnTestsuite>
|
|
</properties>
|
|
</profile>
|
|
</profiles>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<configuration>
|
|
<testSourceDirectory>${project.build.sourceDirectory}</testSourceDirectory>
|
|
<testClassesDirectory>${project.build.outputDirectory}</testClassesDirectory>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>me.normanmaurer.maven.autobahntestsuite</groupId>
|
|
<artifactId>autobahntestsuite-maven-plugin</artifactId>
|
|
<version>0.1.3</version>
|
|
<configuration>
|
|
<mainClass>io.netty.testsuite.websockets.autobahn.AutobahnServer</mainClass>
|
|
<cases>
|
|
<case>*</case>
|
|
</cases>
|
|
<excludeCases />
|
|
<failOnNonStrict>false</failOnNonStrict>
|
|
<skip>${skipAutobahnTestsuite}</skip>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<phase>test</phase>
|
|
<goals>
|
|
<goal>fuzzingclient</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project>
|
|
|