diff options
author | Teemu Suo-Anttila <tsuoanttila@users.noreply.github.com> | 2017-10-09 15:51:34 +0300 |
---|---|---|
committer | Henri Sara <henri.sara@gmail.com> | 2017-10-09 15:51:34 +0300 |
commit | 4ac4b62434ab48fdb7d3ca9c479383d4242062aa (patch) | |
tree | 08925f02a1b695f9a2576acb550df26c5ec0a836 /test | |
parent | 9494818412d3f7d9aa9b8817dd6d62bb64963753 (diff) | |
download | vaadin-framework-4ac4b62434ab48fdb7d3ca9c479383d4242062aa.tar.gz vaadin-framework-4ac4b62434ab48fdb7d3ca9c479383d4242062aa.zip |
Add maven based tests for several application servers (#10143)
Add tests for Glassfish based servers, Jetty 8, Tomcat 7 and Liberty (three runtimes).
Diffstat (limited to 'test')
18 files changed, 871 insertions, 21 deletions
diff --git a/test/pom.xml b/test/pom.xml index 57b0143a80..f9b5a2e473 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -24,12 +24,6 @@ <!-- Allow installing for local testing purposes --> <install.skip>true</install.skip> - - <!-- Default server.name is "jetty", used in server tests --> - <server.name>jetty</server.name> - - <!-- Default reference screenshot location, relative to the module path --> - <reference.directory>${project.basedir}/../screenshots</reference.directory> </properties> <repositories> diff --git a/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/AbstractIntegrationTest.java b/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/AbstractIntegrationTest.java index 79d75f6651..c05cb6fdc6 100644 --- a/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/AbstractIntegrationTest.java +++ b/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/AbstractIntegrationTest.java @@ -51,6 +51,7 @@ public abstract class AbstractIntegrationTest extends ParallelTest { private void openTestURL() { String url = getDeploymentURL() + getContextPath() + getTestPath() + "?" + getParameters().collect(Collectors.joining("&")); + driver.get(url); if (!isElementPresent(UIElement.class)) { @@ -120,7 +121,19 @@ public abstract class AbstractIntegrationTest extends ParallelTest { new WebDriverWait(driver, timeoutInSeconds).until(condition); } + /** + * Returns the deployment context path with a leading slash. If not provided + * through {@code deployment.context.path} system property, will default to + * {@code /demo}. + * + * @return deployment context path + */ protected String getContextPath() { - return "/demo"; + String contextPath = System.getProperty("deployment.context.path"); + if (contextPath == null || contextPath.isEmpty()) { + // Default to /demo + return "/demo"; + } + return contextPath; } } diff --git a/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/push/LongPollingProxyServerIT.java b/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/push/LongPollingProxyServerIT.java index 7dfd2aa6e6..5188583166 100644 --- a/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/push/LongPollingProxyServerIT.java +++ b/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/push/LongPollingProxyServerIT.java @@ -84,7 +84,8 @@ public class LongPollingProxyServerIT extends AbstractIntegrationTest { @Override protected String getContextPath() { - return "/" + path + "/demo"; + // Prefix with the context path with the parameter + return "/" + path + super.getContextPath(); } @Override diff --git a/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/websocket/jsr356/ServletIntegrationJSR356WebsocketIT.java b/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/websocket/jsr356/ServletIntegrationJSR356WebsocketIT.java index f49d3656db..b3111db1d9 100644 --- a/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/websocket/jsr356/ServletIntegrationJSR356WebsocketIT.java +++ b/test/servlet-containers/generic-tests/src/main/java/com/vaadin/tests/integration/websocket/jsr356/ServletIntegrationJSR356WebsocketIT.java @@ -15,12 +15,32 @@ */ package com.vaadin.tests.integration.websocket.jsr356; +import java.util.HashSet; +import java.util.Set; + +import org.junit.Assume; + import com.vaadin.tests.integration.websocket.ServletIntegrationWebsocketIT; public class ServletIntegrationJSR356WebsocketIT extends ServletIntegrationWebsocketIT { // Uses the test method declared in the super class + private static final Set<String> nonJSR356Servers = new HashSet<>(); + + static { + nonJSR356Servers.add("jetty8"); + nonJSR356Servers.add("liberty-microprofile"); + } + + @Override + public void setup() throws Exception { + Assume.assumeFalse("Jetty 8 does not support JSR356", + nonJSR356Servers.contains(System.getProperty("server-name"))); + + super.setup(); + } + @Override protected String getTestPath() { return super.getTestPath().replace("/run/", "/run-jsr356/"); diff --git a/test/servlet-containers/generic/integration_tests.xml b/test/servlet-containers/generic/integration_tests.xml index 28f941e696..3562740009 100644 --- a/test/servlet-containers/generic/integration_tests.xml +++ b/test/servlet-containers/generic/integration_tests.xml @@ -79,18 +79,21 @@ </junit> </target> +<!-- <target name="integration-test-tomcat7"> <antcall target="run-generic-integration-test"> <param name="startDelay" value="10" /> <param name="target-server" value="tomcat7" /> </antcall> </target> +--> <target name="integration-test-tomcat7apacheproxy"> <antcall target="run-generic-integration-test"> <param name="startDelay" value="10" /> <param name="target-server" value="tomcat7apacheproxy" /> </antcall> </target> +<!-- <target name="integration-test-tomcat8"> <antcall target="run-generic-integration-test"> <param name="startDelay" value="10" /> @@ -104,7 +107,6 @@ <param name="target-server" value="jetty8" /> </antcall> </target> -<!-- <target name="integration-test-jetty9"> <antcall target="run-generic-integration-test"> <param name="startDelay" value="90" /> @@ -119,13 +121,13 @@ <param name="demo.war" value="${demo.jboss6.war}"/> </antcall> </target> +<!-- <target name="integration-test-wildfly8"> <antcall target="run-generic-integration-test"> <param name="startDelay" value="10" /> <param name="target-server" value="wildfly8" /> </antcall> </target> -<!-- <target name="integration-test-wildfly9"> <antcall target="run-generic-integration-test"> <param name="startDelay" value="10" /> @@ -146,6 +148,7 @@ <param name="target-port" value="80" /> </antcall> </target> +<!-- <target name="integration-test-glassfish4"> <antcall target="run-generic-integration-test"> <param name="startDelay" value="10" /> @@ -158,7 +161,7 @@ <param name="target-server" value="payara" /> </antcall> </target> - +--> <target name="integration-test-weblogic12"> <antcall target="run-generic-integration-test"> @@ -180,16 +183,25 @@ <parallel> <antcall target="integration-test-weblogic12" /> + +<!-- <antcall target="integration-test-glassfish4" /> - <antcall target="integration-test-payara" /> + <antcall target="integration-test-payara" /> +--> + <antcall target="integration-test-jboss-eap6" /> + +<!-- <antcall target="integration-test-wildfly8" /> -<!-- <antcall target="integration-test-wildfly9" /> - <antcall target="integration-test-wildfly10" /> --> + <antcall target="integration-test-wildfly9" /> + <antcall target="integration-test-wildfly10" /> + <antcall target="integration-test-jetty8" /> -<!-- <antcall target="integration-test-jetty9" /> --> + <antcall target="integration-test-jetty9" /> + <antcall target="integration-test-tomcat7" /> <antcall target="integration-test-tomcat8" /> +--> <antcall target="integration-test-tomcat7apacheproxy" /> </parallel> diff --git a/test/servlet-containers/glassfish/pom.xml b/test/servlet-containers/glassfish/pom.xml new file mode 100644 index 0000000000..a979422f06 --- /dev/null +++ b/test/servlet-containers/glassfish/pom.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-glassfish-server</artifactId> + <name>Vaadin Glassfish Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <glassfish.version>4.1.2.173</glassfish.version> + <server.name>glassfish</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- Server configuration --> + <plugin> + <groupId>org.glassfish.embedded</groupId> + <artifactId>maven-embedded-glassfish-plugin</artifactId> + <version>4.1.1</version> + <executions> + <execution> + <id>start-glassfish</id> + <phase>pre-integration-test</phase> + <goals> + <goal>start</goal> + <goal>deploy</goal> + </goals> + </execution> + <execution> + <id>stop-glassfish</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop</goal> + </goals> + </execution> + </executions> + <configuration> + <port>8080</port> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/jetty8/pom.xml b/test/servlet-containers/jetty8/pom.xml new file mode 100644 index 0000000000..0337058822 --- /dev/null +++ b/test/servlet-containers/jetty8/pom.xml @@ -0,0 +1,73 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-jetty8-server</artifactId> + <name>Vaadin Jetty 8 Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <mortbay.jetty.version>8.1.16.v20140903</mortbay.jetty.version> + <server.name>jetty8</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- + This server test is for an old, outdated version of jetty. + The configuration is not moved to the parent pom, since this + is not useful anywhere else. + --> + <plugin> + <groupId>org.mortbay.jetty</groupId> + <artifactId>jetty-maven-plugin</artifactId> + <version>${mortbay.jetty.version}</version> + <executions> + <execution> + <id>start-jetty</id> + <phase>pre-integration-test</phase> + <goals> + <goal>start</goal> + </goals> + </execution> + <execution> + <id>stop-jetty</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop</goal> + </goals> + </execution> + </executions> + <configuration> + <webApp> + <contextPath>${context.path}</contextPath> + </webApp> + <stopKey>q</stopKey> + <stopPort>8082</stopPort> + <daemon>true</daemon> + <skip>false</skip> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/jsp-integration/pom.xml b/test/servlet-containers/jsp-integration/pom.xml index 41eaf6cbf4..dea98e24e9 100644 --- a/test/servlet-containers/jsp-integration/pom.xml +++ b/test/servlet-containers/jsp-integration/pom.xml @@ -11,6 +11,10 @@ <name>vaadin-test-jsp-integration</name> <packaging>war</packaging> + <properties> + <context.path>/</context.path> + </properties> + <dependencies> <dependency> diff --git a/test/servlet-containers/liberty-javaee/pom.xml b/test/servlet-containers/liberty-javaee/pom.xml new file mode 100644 index 0000000000..f906145f44 --- /dev/null +++ b/test/servlet-containers/liberty-javaee/pom.xml @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-liberty-javaee-server</artifactId> + <name>Vaadin Liberty JavaEE7 Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <liberty.version>17.0.0.1</liberty.version> + <liberty.profile>wlp-javaee7</liberty.profile> + <server.name>liberty-javaee</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <artifactId>maven-failsafe-plugin</artifactId> + <configuration> + <systemPropertyVariables> + <!-- FIXME: Fix liberty to use the same port as everything else. --> + <deployment.url>http://localhost:9080</deployment.url> + </systemPropertyVariables> + </configuration> + </plugin> + + <!-- Server configuration --> + <plugin> + <groupId>net.wasdev.wlp.maven.plugins</groupId> + <artifactId>liberty-maven-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/liberty-microprofile/pom.xml b/test/servlet-containers/liberty-microprofile/pom.xml new file mode 100644 index 0000000000..d8fca45c05 --- /dev/null +++ b/test/servlet-containers/liberty-microprofile/pom.xml @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-liberty-microprofile-server</artifactId> + <name>Vaadin Liberty MicroProfile Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <liberty.version>17.0.0.1</liberty.version> + <liberty.profile>wlp-microProfile1</liberty.profile> + <server.name>liberty-microprofile</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <artifactId>maven-failsafe-plugin</artifactId> + <configuration> + <systemPropertyVariables> + <!-- FIXME: Fix liberty to use the same port as everything else. --> + <deployment.url>http://localhost:9080</deployment.url> + </systemPropertyVariables> + </configuration> + </plugin> + + <!-- Server configuration --> + <plugin> + <groupId>net.wasdev.wlp.maven.plugins</groupId> + <artifactId>liberty-maven-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/liberty-webprofile/pom.xml b/test/servlet-containers/liberty-webprofile/pom.xml new file mode 100644 index 0000000000..6909330ca3 --- /dev/null +++ b/test/servlet-containers/liberty-webprofile/pom.xml @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-liberty-webprofile-server</artifactId> + <name>Vaadin Liberty WebProfile Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <liberty.version>17.0.0.1</liberty.version> + <liberty.profile>wlp-webProfile7</liberty.profile> + <server.name>liberty-webprofile</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <artifactId>maven-failsafe-plugin</artifactId> + <configuration> + <systemPropertyVariables> + <!-- FIXME: Fix liberty to use the same port as everything else. --> + <deployment.url>http://localhost:9080</deployment.url> + </systemPropertyVariables> + </configuration> + </plugin> + + <!-- Server configuration --> + <plugin> + <groupId>net.wasdev.wlp.maven.plugins</groupId> + <artifactId>liberty-maven-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/payara/pom.xml b/test/servlet-containers/payara/pom.xml new file mode 100644 index 0000000000..506fb635f9 --- /dev/null +++ b/test/servlet-containers/payara/pom.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-payara-server</artifactId> + <name>Vaadin Payara Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <payara.version>4.1.2.173</payara.version> + <server.name>payara</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- Server configuration --> + <plugin> + <groupId>fish.payara.maven.plugins</groupId> + <artifactId>payara-micro-maven-plugin</artifactId> + </plugin> + + <!-- Payara Micro starting time is a bit over a minute. Need to wait. --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <version>1.8</version> + <executions> + <execution> + <id>wait-for-server-start</id> + <phase>pre-integration-test</phase> + <configuration> + <target> + <echo message="Waiting for Payara Micro server to start" /> + <!-- Starting time from a couple of local test runs --> + <sleep seconds="65" /> + </target> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/pom.xml b/test/servlet-containers/pom.xml index 7727c86c4f..40f69bfa8f 100644 --- a/test/servlet-containers/pom.xml +++ b/test/servlet-containers/pom.xml @@ -11,6 +11,14 @@ <name>vaadin-servlet-containers-test</name> <packaging>pom</packaging> + <properties> + <server.name>jetty9</server.name> + <context.path>/${project.build.finalName}</context.path> + + <!-- Default reference screenshot location, relative to the module path --> + <reference.directory>${project.basedir}/../screenshots</reference.directory> + </properties> + <modules> <module>generic-ui</module> <module>generic-tests</module> @@ -19,6 +27,7 @@ <build> <pluginManagement> <plugins> + <!-- Wildfly Configuration. Version selected with wildfly.version --> <plugin> <groupId>org.wildfly.plugins</groupId> <artifactId>wildfly-maven-plugin</artifactId> @@ -31,10 +40,6 @@ <goal>start</goal> <goal>deploy</goal> </goals> - <configuration> - <!-- Context path comes from WAR deployment name --> - <name>demo.war</name> - </configuration> </execution> <execution> <id>stop-wildfly</id> @@ -45,12 +50,152 @@ </execution> </executions> </plugin> + + <!-- Payara Micro Configuration. Version selected with payara.version --> + <plugin> + <groupId>fish.payara.maven.plugins</groupId> + <artifactId>payara-micro-maven-plugin</artifactId> + <version>1.0.0</version> + <executions> + <execution> + <id>start-payara</id> + <phase>pre-integration-test</phase> + <goals> + <goal>bundle</goal> + <goal>start</goal> + </goals> + </execution> + <execution> + <id>stop-payara</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop</goal> + </goals> + </execution> + </executions> + <configuration> + <payaraVersion>${payara.version}</payaraVersion> + <useUberJar>true</useUberJar> + <daemon>true</daemon> + </configuration> + </plugin> + + <!-- Glassfish Embedded Configuration. --> + <plugin> + <groupId>org.glassfish.embedded</groupId> + <artifactId>maven-embedded-glassfish-plugin</artifactId> + <version>4.1.1</version> + <executions> + <execution> + <id>start-glassfish</id> + <phase>pre-integration-test</phase> + <goals> + <goal>start</goal> + <goal>deploy</goal> + </goals> + </execution> + <execution> + <id>stop-glassfish</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop</goal> + </goals> + </execution> + </executions> + <configuration> + <port>8080</port> + </configuration> + </plugin> + + <!-- Generic cargo plugin configuration. Define container to use in submodule. --> + <plugin> + <groupId>org.codehaus.cargo</groupId> + <artifactId>cargo-maven2-plugin</artifactId> + <configuration> + <configuration> + <type>standalone</type> + <home> + ${project.build.directory}/cargo-server + </home> + <properties> + <cargo.servlet.port>8080</cargo.servlet.port> + </properties> + </configuration> + <deployables> + <deployable> + <groupId>${project.groupId}</groupId> + <artifactId>${project.artifactId}</artifactId> + <type>war</type> + <properties> + <context>${context.path}</context> + </properties> + </deployable> + </deployables> + </configuration> + <executions> + <execution> + <id>start-cargo-server</id> + <phase>pre-integration-test</phase> + <goals> + <goal>start</goal> + </goals> + </execution> + <execution> + <id>stop-cargo-server</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop</goal> + </goals> + </execution> + </executions> + </plugin> + + <!-- WebSphere Liberty Configuration. Version and profile are configurable with liberty.version and liberty.profile --> + <plugin> + <groupId>net.wasdev.wlp.maven.plugins</groupId> + <artifactId>liberty-maven-plugin</artifactId> + <version>2.0</version> + <executions> + <execution> + <id>start-liberty</id> + <phase>pre-integration-test</phase> + <goals> + <goal>start-server</goal> + <goal>deploy</goal> + </goals> + </execution> + <execution> + <id>stop-liberty</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop-server</goal> + </goals> + </execution> + </executions> + <configuration> + <!-- FIXME: This plug-in should also use port 8080 --> + <appArtifact> + <groupId>${project.groupId}</groupId> + <artifactId>${project.artifactId}</artifactId> + <version>${project.version}</version> + <type>${project.packaging}</type> + </appArtifact> + <assemblyArtifact> + <groupId>com.ibm.websphere.appserver.runtime</groupId> + <artifactId>${liberty.profile}</artifactId> + <version>${liberty.version}</version> + <type>zip</type> + </assemblyArtifact> + </configuration> + </plugin> + + <!-- Jetty Configuration. Version selected with jetty.version --> <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <configuration> <webApp> - <contextPath>/demo</contextPath> + <contextPath>${context.path}</contextPath> </webApp> </configuration> </plugin> @@ -74,6 +219,9 @@ <dependenciesToScan> <dependency>${project.groupId}:vaadin-test-server-tests</dependency> </dependenciesToScan> + <systemPropertyVariables> + <deployment.context.path>${context.path}</deployment.context.path> + </systemPropertyVariables> </configuration> </plugin> </plugins> @@ -91,11 +239,23 @@ <module>karaf</module> <module>wildfly10</module> <module>wildfly9</module> + <module>wildfly8</module> + <module>jetty8</module> <module>jetty9</module> + <module>payara</module> + <module>glassfish</module> + <!-- TODO: Payara 5 and Glassfish 5 --> + <module>tomcat7</module> + <module>tomcat80</module> + <module>tomcat85</module> + <module>tomcat9</module> + <module>liberty-javaee</module> + <module>liberty-webprofile</module> + <module>liberty-microprofile</module> </modules> </profile> - <!-- TODO Remove this when the ant build is no longer used. --> <profile> + <!-- TODO Remove this when the ant build is no longer used. --> <id>ant-test</id> <modules> <module>generic</module> @@ -106,12 +266,38 @@ <modules> <module>wildfly10</module> <module>wildfly9</module> + <module>wildfly8</module> </modules> </profile> <profile> <id>jetty</id> <modules> <module>jetty9</module> + <module>jetty8</module> + </modules> + </profile> + <profile> + <id>liberty</id> + <modules> + <module>liberty-webprofile</module> + <module>liberty-javaee</module> + <module>liberty-microprofile</module> + </modules> + </profile> + <profile> + <id>glassfish</id> + <modules> + <module>glassfish</module> + <module>payara</module> + </modules> + </profile> + <profile> + <id>tomcat</id> + <modules> + <module>tomcat7</module> + <module>tomcat80</module> + <module>tomcat85</module> + <module>tomcat9</module> </modules> </profile> </profiles> diff --git a/test/servlet-containers/tomcat7/pom.xml b/test/servlet-containers/tomcat7/pom.xml new file mode 100644 index 0000000000..b14b01741b --- /dev/null +++ b/test/servlet-containers/tomcat7/pom.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-tomcat7-server</artifactId> + <name>Vaadin Tomcat 7 Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <tomcat.version>7.0.82</tomcat.version> + <server.name>tomcat7</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- Server configuration --> + <plugin> + <groupId>org.codehaus.cargo</groupId> + <artifactId>cargo-maven2-plugin</artifactId> + <configuration> + <container> + <containerId>tomcat7x</containerId> + <artifactInstaller> + <groupId>org.apache.tomcat</groupId> + <artifactId>tomcat</artifactId> + <version>${tomcat.version}</version> + </artifactInstaller> + </container> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/tomcat80/pom.xml b/test/servlet-containers/tomcat80/pom.xml new file mode 100644 index 0000000000..2a7d726441 --- /dev/null +++ b/test/servlet-containers/tomcat80/pom.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-tomcat80-server</artifactId> + <name>Vaadin Tomcat 8.0 Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <tomcat.version>8.0.47</tomcat.version> + <server.name>tomcat8.0</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- Server configuration --> + <plugin> + <groupId>org.codehaus.cargo</groupId> + <artifactId>cargo-maven2-plugin</artifactId> + <configuration> + <container> + <containerId>tomcat8x</containerId> + <artifactInstaller> + <groupId>org.apache.tomcat</groupId> + <artifactId>tomcat</artifactId> + <version>${tomcat.version}</version> + </artifactInstaller> + </container> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/tomcat85/pom.xml b/test/servlet-containers/tomcat85/pom.xml new file mode 100644 index 0000000000..d061839a56 --- /dev/null +++ b/test/servlet-containers/tomcat85/pom.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-tomcat85-server</artifactId> + <name>Vaadin Tomcat 8.5 Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <tomcat.version>8.5.23</tomcat.version> + <server.name>tomcat8.5</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- Server configuration --> + <plugin> + <groupId>org.codehaus.cargo</groupId> + <artifactId>cargo-maven2-plugin</artifactId> + <configuration> + <container> + <containerId>tomcat8x</containerId> + <artifactInstaller> + <groupId>org.apache.tomcat</groupId> + <artifactId>tomcat</artifactId> + <version>${tomcat.version}</version> + </artifactInstaller> + </container> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/tomcat9/pom.xml b/test/servlet-containers/tomcat9/pom.xml new file mode 100644 index 0000000000..626578fe6d --- /dev/null +++ b/test/servlet-containers/tomcat9/pom.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-tomcat9-server</artifactId> + <name>Vaadin Tomcat 9 Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <tomcat.version>9.0.1</tomcat.version> + <server.name>tomcat9</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- Server configuration --> + <plugin> + <groupId>org.codehaus.cargo</groupId> + <artifactId>cargo-maven2-plugin</artifactId> + <configuration> + <container> + <containerId>tomcat9x</containerId> + <artifactInstaller> + <groupId>org.apache.tomcat</groupId> + <artifactId>tomcat</artifactId> + <version>${tomcat.version}</version> + </artifactInstaller> + </container> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/test/servlet-containers/wildfly8/pom.xml b/test/servlet-containers/wildfly8/pom.xml new file mode 100644 index 0000000000..4ca3bd07cd --- /dev/null +++ b/test/servlet-containers/wildfly8/pom.xml @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + <parent> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-servlet-containers-test</artifactId> + <version>8.2-SNAPSHOT</version> + </parent> + <artifactId>vaadin-test-wildfly8-server</artifactId> + <name>Vaadin Wildfly 8 Test</name> + <packaging>war</packaging> + <properties> + <jetty.skip>true</jetty.skip> + <wildfly.version>8.2.1.Final</wildfly.version> + <server.name>wildfly8</server.name> + </properties> + + <dependencies> + <!-- UI classes and tests from dependencies --> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-ui</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-test-server-tests</artifactId> + <version>${project.version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <!-- Server configuration --> + <plugin> + <groupId>org.wildfly.plugins</groupId> + <artifactId>wildfly-maven-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> |