<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright 2021 OPS4J.

    Licensed 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 https://maven.apache.org/xsd/maven-4.0.0.xsd">

	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.ops4j.pax.web</groupId>
		<artifactId>pax-web-itest</artifactId>
		<version>11.1.2</version>
		<relativePath>../pom.xml</relativePath>
	</parent>

	<groupId>org.ops4j.pax.web.itest</groupId>
	<artifactId>pax-web-itest-server</artifactId>

	<name>OPS4J Pax Web - non-OSGi Integration Tests</name>

	<description>Integration tests for Pax Web servers running without OSGi</description>

	<build>
		<testResources>
			<testResource>
				<directory>src/test/resources</directory>
				<filtering>true</filtering>
			</testResource>
		</testResources>

		<plugins>

			<!-- Core plugins -->

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<redirectTestOutputToFile>true</redirectTestOutputToFile>
					<runOrder>alphabetical</runOrder>
					<forkCount>1</forkCount>
					<reuseForks>false</reuseForks>
					<trimStackTrace>false</trimStackTrace>
				</configuration>
			</plugin>

		</plugins>
	</build>

	<dependencies>

		<!-- pax-web own artifacts -->

		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-api</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-spi</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-runtime</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-jsp</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-extender-whiteboard</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-extender-war</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-jetty</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-tomcat</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-tomcat-websocket</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-undertow</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-undertow-websocket</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.ops4j.pax.web</groupId>
			<artifactId>pax-web-websocket</artifactId>
			<scope>test</scope>
		</dependency>

<!--		<dependency>-->
<!--			<groupId>org.ops4j.pax.web.samples</groupId>-->
<!--			<artifactId>the-wab-jar</artifactId>-->
<!--			<scope>test</scope>-->
<!--		</dependency>-->

		<!-- OPS4J dependencies -->

		<dependency>
			<groupId>org.ops4j.base</groupId>
			<artifactId>ops4j-base-util-property</artifactId>
			<scope>provided</scope>
		</dependency>

		<!-- OSGi -->

		<dependency>
			<groupId>org.osgi</groupId>
			<artifactId>osgi.core</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.osgi</groupId>
			<artifactId>org.osgi.service.servlet</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- JakartaEE -->

		<dependency>
			<groupId>jakarta.el</groupId>
			<artifactId>jakarta.el-api</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>jakarta.servlet</groupId>
			<artifactId>jakarta.servlet-api</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>jakarta.websocket</groupId>
			<artifactId>jakarta.websocket-api</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>jakarta.websocket</groupId>
			<artifactId>jakarta.websocket-client-api</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat</groupId>
			<artifactId>tomcat-jsp-api</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.glassfish.web</groupId>
			<artifactId>jakarta.servlet.jsp.jstl</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- Jetty -->

		<dependency>
			<groupId>org.eclipse.jetty.http2</groupId>
			<artifactId>jetty-http2-server</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-alpn-server</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-alpn-java-server</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.eclipse.jetty.ee10.websocket</groupId>
			<artifactId>jetty-ee10-websocket-jakarta-common</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.eclipse.jetty.ee10.websocket</groupId>
			<artifactId>jetty-ee10-websocket-jakarta-server</artifactId>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<groupId>jakarta.transaction</groupId>
					<artifactId>jakarta.transaction-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<!-- Tomcat -->

		<dependency>
			<groupId>org.apache.tomcat</groupId>
			<artifactId>tomcat-jasper</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat</groupId>
			<artifactId>tomcat-util-scan</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat</groupId>
			<artifactId>tomcat-jasper-el</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat</groupId>
			<artifactId>tomcat-websocket</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat.embed</groupId>
			<artifactId>tomcat-embed-core</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.eclipse.jdt</groupId>
			<artifactId>ecj</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- Undertow -->

		<dependency>
			<groupId>org.jboss.threads</groupId>
			<artifactId>jboss-threads</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<!-- the classes from this dependency are normally provided by pax-web-undertow, but it doesn't work in "test" phase yet -->
			<groupId>org.wildfly.common</groupId>
			<artifactId>wildfly-common</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- Logging -->

		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jul-to-slf4j</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-slf4j2-impl</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- Other -->

		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-compress</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.bouncycastle</groupId>
			<artifactId>bcprov-jdk18on</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.bouncycastle</groupId>
			<artifactId>bcpkix-jdk18on</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<!-- Version 5 is for HTTP/2. There's no OSGi bundle for that -->
			<groupId>org.apache.httpcomponents.client5</groupId>
			<artifactId>httpclient5</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- Testing -->

		<!--
			Stay at JUnit 4 with much better @Parameterized support
			https://github.com/junit-team/junit5/issues/878
		-->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<scope>test</scope>
		</dependency>

	</dependencies>
</project>
