<?xml version="1.0" encoding="UTF-8"?><!-- | |
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"> | |
<parent> | |
<groupId>org.apache.portals.pluto</groupId> | |
<artifactId>pluto</artifactId> | |
<version>3.0-SNAPSHOT</version> | |
</parent> | |
<modelVersion>4.0.0</modelVersion> | |
<groupId>javax.portlet</groupId> | |
<artifactId>portlet-tck</artifactId> | |
<name>Portlet API Technology Compatibility Kit</name> | |
<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://git-wip-us.apache.org/repos/asf/portals-pluto.git</connection> | |
<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/portals-pluto.git</developerConnection> | |
<url>https://github.com/apache/portals-pluto</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 Apache Pluto</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 and 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> | |
<!-- Set to true for modules that define all test pages in a file (page file is not generated from the portlet.xml) --> | |
<additional.pagefile.only>false</additional.pagefile.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>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>V3PortletContextTests</module> | |
<module>V3PortletConfigTests</module> | |
<module>V3URLTests</module> | |
<module>V3RenderStateTests</module> | |
<module>V3HeaderPortletTests</module> | |
<module>deploy</module> | |
<module>driver</module> | |
</modules> | |
<dependencyManagement> | |
<dependencies> | |
<!-- the portlet tag library --> | |
<dependency> | |
<groupId>org.apache.portals.pluto</groupId> | |
<artifactId>pluto-taglib</artifactId> | |
<version>${project.version}</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.53.0</version> | |
<scope>test</scope> | |
</dependency> | |
<dependency> | |
<groupId>org.seleniumhq.selenium</groupId> | |
<artifactId>htmlunit-driver</artifactId> | |
<version>2.21</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> | |
<configuration> | |
<skipIfEmpty>true</skipIfEmpty> | |
</configuration> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-war-plugin</artifactId> | |
<configuration> | |
<archiveClasses>false</archiveClasses> | |
<failOnMissingWebXml>false</failOnMissingWebXml> | |
<webResources> | |
<webResource> | |
<directory>${project.build.directory}/${test.file.dir}</directory> | |
<targetPath>${test.file.dir}</targetPath> | |
</webResource> | |
</webResources> | |
</configuration> | |
</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> | |
<!-- For generating test case list from portlet.xml and additionalTCs.xml files --> | |
<execution> | |
<id>generate-testcases</id> | |
<phase>generate-resources</phase> | |
<goals> | |
<goal>transform</goal> | |
</goals> | |
<configuration> | |
<skip>${additional.testcases.only}</skip> | |
<transformationSets> | |
<!-- automatically generate test case list for module --> | |
<transformationSet> | |
<dir>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> | |
</transformationSets> | |
</configuration> | |
</execution> | |
<!-- For generating page file from portlet.xml --> | |
<execution> | |
<id>generate-pagefile</id> | |
<phase>generate-resources</phase> | |
<goals> | |
<goal>transform</goal> | |
</goals> | |
<configuration> | |
<skip>${additional.pagefile.only}</skip> | |
<transformationSets> | |
<!-- Automatically generate page file for the module --> | |
<transformationSet> | |
<dir>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> | |
</execution> | |
</executions> | |
</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> | |
<!-- For copying the page & testcase files for V3 module build --> | |
<plugin> | |
<groupId>com.coderplus.maven.plugins</groupId> | |
<artifactId>copy-rename-maven-plugin</artifactId> | |
<version>1.0.1</version> | |
<executions> | |
<execution> | |
<id>copy-files</id> | |
<phase>generate-sources</phase> | |
<goals> | |
<goal>copy</goal> | |
</goals> | |
<configuration> | |
<fileSets> | |
<fileSet> | |
<sourceFile>src/main/resources/xml-resources/additionalTCs.xml</sourceFile> | |
<destinationFile>target/${test.file.dir}/${project.artifactId}-tests.xml</destinationFile> | |
</fileSet> | |
<fileSet> | |
<sourceFile>src/main/resources/xml-resources/additionalPages.xml</sourceFile> | |
<destinationFile>target/${test.file.dir}/${project.artifactId}-pages.xml</destinationFile> | |
</fileSet> | |
</fileSets> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
</plugins> | |
</pluginManagement> | |
<plugins> | |
<!-- skip legal file checking for now --> | |
<plugin> | |
<groupId>org.codehaus.mojo</groupId> | |
<artifactId>ianal-maven-plugin</artifactId> | |
<executions> | |
<execution> | |
<goals> | |
<goal>verify-legal-files</goal> | |
</goals> | |
<configuration> | |
<skip>true</skip> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-javadoc-plugin</artifactId> | |
<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> | |
</profile> | |
</profiles> | |
</project> |