blob: df75179c91c810a30d53c6c2f164be45927c8898 [file] [log] [blame]
<!--
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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>javax.portlet</groupId>
<artifactId>tck</artifactId>
<name>Portlet API Technology Compatibility Kit</name>
<version>3.0-SNAPSHOT</version>
<packaging>pom</packaging>
<licenses>
<license>
<name>apache_v2</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
</license>
</licenses>
<scm>
<connection>scm:git:https://github.com/msnicklous/portletspec3</connection>
<developerConnection>scm:git:https://github.com/msnicklous/portletspec3</developerConnection>
<url>scm:git:https://github.com/msnicklous/portletspec3</url>
</scm>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- To automatically generate a list of test cases, each module transforms the portlet.xml file -->
<!-- using an XSLT transformation. -->
<!-- Configuration used by XML transformations -->
<!-- test.file.xslt Name of stylesheet in ${project.build.directory}/xml-resources/ dirs -->
<!-- test.file.dir location of generated xml files in individual modules for tests -->
<!-- test.file.name per-module name of xml file containing list of covered test cases -->
<test.file.xsl>test.xsl</test.file.xsl>
<test.file.dir>generated-resources/xml/module</test.file.dir>
<test.file.name>${project.artifactId}-tests.xml</test.file.name>
<!-- page.file.xsl Name of stylesheet used to create page definititions -->
<!-- page.file.name per-module name of xml file containing page definitions for test -->
<page.file.xsl>plutoSinglePortletPage.xsl</page.file.xsl>
<page.file.name>${project.artifactId}-pages.xml</page.file.name>
<page.file.final.xsl>plutoPageCombiner.xsl</page.file.final.xsl>
<page.file.final.name>pluto-portal-driver-config.xml</page.file.final.name>
<!-- test.context.base context string used when addressing test pages. Used by module stylesheet -->
<test.context.base>pluto/portal/</test.context.base>
<!-- test.list.xsl Name of stylesheet to combine test case lists from subproject -->
<!-- test.list.dir location of finished xml file containing complete test case list -->
<!-- test.list.name name of xml file containing complete test case list -->
<test.list.xsl>testCombiner.xsl</test.list.xsl>
<test.list.dir>generated-resources/xml/final</test.list.dir>
<test.list.name>test.xml</test.list.name>
<!-- This variable is used by the test driver to determine how test page links are
to be found. Values:
generateURLs the driver generates URLs based on config information.
followLinks the driver looks for links containing the page name and clicks them in
order to access the test pages. In this case, the portal must
produce navigation links to each of the test pages.
If configured to generate URLs, the driver generates URLs of the form:
http://<test.server.host>:<test.server.port>/<test.context.base><test.page.name>
where <test.page.name> is the name of the test page generated by the individual modules
-->
<test.url.strategy>followLinks</test.url.strategy>
<!-- Configuration of URL to login page -->
<test.server.login.url>http://localhost:8080/pluto/portal/About%20Apache%20Pluto</test.server.login.url>
<!-- Configuration of portlet container under test for generated URLs-->
<!-- (only needed if test.url.strategy=generateURLs) -->
<test.server.host>localhost</test.server.host>
<test.server.port>8080</test.server.port>
<!-- HTML field IDs and values for username & password to enable automatic login -->
<test.server.username.id>j_username</test.server.username.id>
<test.server.username>pluto</test.server.username>
<test.server.password.id>j_password</test.server.password.id>
<test.server.password>pluto</test.server.password>
<!-- Specifies the browser to be used by selenium WebDriver for running the tests. -->
<!-- Can be used with firefox or HTMLUnit without setting the test.browser.webDriver property. -->
<!-- Use of Chrome or IE requires the webDriver to be downloaded ad available. Set the -->
<!-- test.browser.webDriver property to point to the appropriate WebDriver server. -->
<test.browser>firefox</test.browser>
<test.browser>HTMLUnit</test.browser>
<!-- commented outline below shows configuration for the Internet Explorer driver -->
<!-- test.browser.webDriver>C:\ntutil\IEDriverServer_x64_2.42.0\IEDriverServer.exe</test.browser.webDriver -->
<!-- Specify timeout in seconds for the driver to wait for page load. must be an integer. -->
<test.timeout>3</test.timeout>
<!-- Set in subprojects containing additional test case file. default is no additional file (false) -->
<additional.testcase.uri>false</additional.testcase.uri>
<!-- Set to true for modules that define all test cases in a file (TCs are not generated from the portlet.xml) -->
<additional.testcases.only>false</additional.testcases.only>
</properties>
<modules>
<module>common</module>
<module>TestModule1</module>
<module>TestModule2</module>
<module>TestModule3</module>
<module>TestModule3-portlet1</module>
<module>TestModule3-portlet2</module>
<module>V2AnnotationTests</module>
<module>V2EnvironmentTests</module>
<module>V2ExceptionTests</module>
<module>V2FilterTests</module>
<module>V2PortletTests</module>
<module>V2RequestTests</module>
<module>V2ResponseTests</module>
<module>V2URLTests</module>
<module>V2WrapperTests</module>
<module>V2AddlEnvironmentTests</module>
<module>V2AddlFilterTests</module>
<module>V2AddlPortletTests</module>
<module>V2AddlRequestTests</module>
<module>V2AddlResponseTests</module>
<module>V2AddlUrlTests</module>
<module>V2PortletTagLibraryTests</module>
<module>V2PortletTagLibraryTests2</module>
<module>V2PortletTagLibraryTests3</module>
<module>V2DispatcherTests</module>
<module>V2DispatcherTests2</module>
<module>V2DispatcherTests3S</module>
<module>V2DispatcherTests4</module>
<module>V2DispatcherTests5</module>
<module>V2DispatcherTests6</module>
<module>V2DispatcherReqRespTests1</module>
<module>V2DispatcherReqRespTests2</module>
<module>V2DispatcherReqRespTests3</module>
<module>V2DispatcherReqRespTests4</module>
<module>V2DispatcherReqRespTests5S</module>
<module>V2SigTestsAction</module>
<module>V2SigTestsEnv</module>
<module>V2SigTestsEvent</module>
<module>V2SigTestsException</module>
<module>V2SigTestsFilter</module>
<module>V2SigTestsRender</module>
<module>V2SigTestsResource</module>
<module>V2SigTestsURL</module>
<module>V2SigTestsWrapper</module>
<module>deploy</module>
<module>driver</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>javax.portlet</groupId>
<artifactId>portlet-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<!-- for eclipse JSP tooling purposes -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.portals.pluto</groupId>
<artifactId>pluto-taglib</artifactId>
<version>2.1.0-M3</version>
<scope>provided</scope>
</dependency>
<!-- For creating and executing tests -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.43.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<finalName>${project.artifactId}</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<skipIfEmpty>true</skipIfEmpty>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<archiveClasses>false</archiveClasses>
<webResources>
<webResource>
<directory>${project.build.directory}/${test.file.dir}</directory>
<targetPath>${test.file.dir}</targetPath>
</webResource>
</webResources>
</configuration>
</plugin>
<!-- For generating portlets that can be deployed to Pluto -->
<plugin>
<groupId>org.apache.portals.pluto</groupId>
<artifactId>maven-pluto-plugin</artifactId>
<version>2.0.3</version>
<dependencies>
<dependency>
<groupId>org.apache.portals.pluto</groupId>
<artifactId>pluto-util</artifactId>
<version>2.0.3</version>
<scope>runtime</scope>
</dependency>
</dependencies>
</plugin>
<!-- For Performing xml translations to create test.xml files -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xml-maven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>transform</goal>
</goals>
</execution>
</executions>
<configuration>
<transformationSets>
<!-- automatically generate test case list for module -->
<transformationSet>
<dir>${basedir}/src/main/webapp/WEB-INF</dir>
<includes>
<include>portlet.xml</include>
</includes>
<outputDir>${project.build.directory}/${test.file.dir}</outputDir>
<fileMappers>
<fileMapper
implementation="org.codehaus.plexus.components.io.filemappers.MergeFileMapper">
<targetName>${test.file.name}</targetName>
</fileMapper>
</fileMappers>
<parameters>
<parameter>
<name>additionalTCs</name>
<value>${additional.testcase.uri}</value>
</parameter>
<parameter>
<name>copyOnly</name>
<value>${additional.testcases.only}</value>
</parameter>
</parameters>
<stylesheet>${project.build.directory}/xml-resources/${test.file.xsl}</stylesheet>
</transformationSet>
<!-- Automatically generate page file for the module -->
<transformationSet>
<dir>${basedir}/src/main/webapp/WEB-INF</dir>
<includes>
<include>portlet.xml</include>
</includes>
<outputDir>${project.build.directory}/${test.file.dir}</outputDir>
<fileMappers>
<fileMapper
implementation="org.codehaus.plexus.components.io.filemappers.MergeFileMapper">
<targetName>${page.file.name}</targetName>
</fileMapper>
</fileMappers>
<parameters>
<parameter>
<name>portlet-app-context</name>
<value>${project.artifactId}-${project.version}</value>
</parameter>
</parameters>
<stylesheet>${project.build.directory}/xml-resources/${page.file.xsl}</stylesheet>
</transformationSet>
</transformationSets>
</configuration>
</plugin>
<!-- For extracting the XML transformation stylesheets from common module -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<id>xml-resource-dependencies</id>
<phase>generate-sources</phase>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<configuration>
<includeArtifactIds>tck-common</includeArtifactIds>
<includes>xml-resources/**</includes>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<doctitle>
JSR 362 Portlet Specification 3.0 TCK Working Document
</doctitle>
<windowtitle>
JSR 362 Portlet Specification 3.0 TCK Working Document
</windowtitle>
<stylesheetfile>${javadoc.css.file}</stylesheetfile>
<!-- link to Java EE APIs for cross-references -->
<links>
<link>http://docs.oracle.com/javaee/7/api/</link>
</links>
<docfilessubdirs>true</docfilessubdirs>
<bottom>
<![CDATA[Java Portlet Specification V3.0 Working Document.
See the <a href="doc-files/NOTICE.txt">Copyright</a> and
<a href="doc-files/LICENSE.txt">License</a> provided with this distribution.
Use is subject to
<a href="http://www.apache.org/licenses/LICENSE-2.0">license terms</a>.]]>
</bottom>
</configuration>
<executions>
<execution>
<id>aggregate</id>
<goals>
<goal>aggregate</goal>
</goals>
<phase>site</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.17</version>
<configuration>
<aggregate>true</aggregate>
<reportsDirectories>
<reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
<reportsDirectory>${project.build.directory}/jasmine</reportsDirectory>
</reportsDirectories>
</configuration>
</plugin>
</plugins>
</reporting>
<profiles>
<profile>
<id>pluto</id>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.1.2</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
<scope>compile</scope>
</dependency>
</dependencies>
</dependencyManagement>
</profile>
</profiles>
</project>