Modified: jakarta/cactus/trunk/scratchpad/TestCactus/pom.xml URL: http://svn.apache.org/viewvc/jakarta/cactus/trunk/scratchpad/TestCactus/pom.xml?rev=642435&r1=642434&r2=642435&view=diff ============================================================================== --- jakarta/cactus/trunk/scratchpad/TestCactus/pom.xml (original) +++ jakarta/cactus/trunk/scratchpad/TestCactus/pom.xml Fri Mar 28 16:39:13 2008 @@ -1,114 +1,114 @@ -<?xml version="1.0"?> -<!-- - 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> - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.cactus</groupId> - <artifactId>test</artifactId> - <version>0.1-SNAPSHOT</version> - <packaging>war</packaging> - <build> - <plugins> - <plugin> - <groupId>org.apache.cactus.integration.m2</groupId> - <artifactId>cactus-m2-plugin</artifactId> - <version>1.0-SNAPSHOT</version> - <dependencies> - <dependency> - <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> - <version>2.3</version> - </dependency> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>3.8.2</version> - </dependency> - <dependency> - <groupId>org.apache.cactus</groupId> - <artifactId>integration-ant</artifactId> - <version>1.18-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.apache.cactus</groupId> - <artifactId>javaEE-14-uberjar</artifactId> - <version>1.18-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.apache.cactus</groupId> - <artifactId>javaEE-14-uberjar</artifactId> - <version>1.18-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>xerces</groupId> - <artifactId>xercesImpl</artifactId> - <version>2.6.2</version> - </dependency> - </dependencies> -<configuration> - <!--cactifyConfiguration--> - <!--srcFile>target\test-0.1-SNAPSHOT.war</srcFile> - <destFile>test-01-SNAPSHOT-cactified.war</destFile--> - <warFile>test-01-SNAPSHOT-cactified.war</warFile> - <containerSet implementation="org.apache.cactus.integration.ant.ContainerSet"> - <cargo> - <containerId>tomcat5x</containerId> - <home>C:\apache\tomcat\apache-tomcat-6.0.14\</home> - <configuration> - <property> - <name>cargo.servlet.port</name> - <value>8080</value> - </property> - <deployable> - <type>war</type> - <file>test-01-SNAPSHOT-cactified.war</file> - </deployable> - </configuration> - </cargo> - </containerSet> - <!--/cactifyConfiguration--> -</configuration> - </plugin> - - </plugins> - </build> - <dependencies> - <dependency> - <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> - <version>2.3</version> - </dependency> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>3.8.2</version> - </dependency> - <dependency> - <groupId>org.apache.cactus</groupId> - <artifactId>integration-ant</artifactId> - <version>1.18-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>org.apache.cactus</groupId> - <artifactId>javaEE-14-uberjar</artifactId> - <version>1.18-SNAPSHOT</version> - </dependency> - </dependencies> - -</project> +<?xml version="1.0"?> +<!-- + 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> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.cactus</groupId> + <artifactId>test</artifactId> + <version>0.1-SNAPSHOT</version> + <packaging>war</packaging> + <build> + <plugins> + <plugin> + <groupId>org.apache.cactus.integration.m2</groupId> + <artifactId>cactus-m2-plugin</artifactId> + <version>1.0-SNAPSHOT</version> + <dependencies> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <version>2.3</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.2</version> + </dependency> + <dependency> + <groupId>org.apache.cactus</groupId> + <artifactId>integration-ant</artifactId> + <version>1.18-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.cactus</groupId> + <artifactId>javaEE-14-uberjar</artifactId> + <version>1.18-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.cactus</groupId> + <artifactId>javaEE-14-uberjar</artifactId> + <version>1.18-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + <version>2.6.2</version> + </dependency> + </dependencies> +<configuration> + <!--cactifyConfiguration--> + <!--srcFile>target\test-0.1-SNAPSHOT.war</srcFile> + <destFile>test-01-SNAPSHOT-cactified.war</destFile--> + <warFile>test-01-SNAPSHOT-cactified.war</warFile> + <containerSet implementation="org.apache.cactus.integration.ant.ContainerSet"> + <cargo> + <containerId>tomcat5x</containerId> + <home>C:\apache\tomcat\apache-tomcat-6.0.14\</home> + <configuration> + <property> + <name>cargo.servlet.port</name> + <value>8080</value> + </property> + <deployable> + <type>war</type> + <file>test-01-SNAPSHOT-cactified.war</file> + </deployable> + </configuration> + </cargo> + </containerSet> + <!--/cactifyConfiguration--> +</configuration> + </plugin> + + </plugins> + </build> + <dependencies> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <version>2.3</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.2</version> + </dependency> + <dependency> + <groupId>org.apache.cactus</groupId> + <artifactId>integration-ant</artifactId> + <version>1.18-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.cactus</groupId> + <artifactId>javaEE-14-uberjar</artifactId> + <version>1.18-SNAPSHOT</version> + </dependency> + </dependencies> + +</project>
Propchange: jakarta/cactus/trunk/scratchpad/TestCactus/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/TestCactus/project.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/TestCactus/src/main/java/org/apache/cactus/servlet/SampleServlet.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/TestCactus/src/main/java/org/apache/test/TestSampleServlet.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/TestCactus/src/main/webapp/WEB-INF/web.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/default-project.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/conf/aspectwerkz.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/maven.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/project.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/project.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/aspect/ClientInterceptionAspect.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/internal/ClientManager.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/internal/orchestrator/Orchestrator.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/internal/orchestrator/OrchestratorClient.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/internal/orchestrator/handlers/GetResultHandler.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/internal/orchestrator/handlers/GetTestHandler.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/internal/orchestrator/handlers/SetResultHandler.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/main/org/apache/cactus/framework/internal/orchestrator/handlers/SetTestHandler.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/framework/src/test/org/apache/cactus/framework/internal/orchestrator/OrchestratorClientTest.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/integration/maven/maven.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/integration/maven/plugin.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/integration/maven/project.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/integration/maven/project.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/maven.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/project.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/conf/aspectwerkz.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/maven.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/project.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/project.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/src/main/org/apache/cactus/sample/servlet/SampleBodyTag.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/src/main/org/apache/cactus/sample/servlet/SampleServlet.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/src/main/org/apache/cactus/sample/servlet/SampleServletConfig.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/src/main/org/apache/cactus/sample/servlet/SampleTag.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/src/test-cactus/org/apache/cactus/sample/servlet/TestSampleServletAspectWerkz.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: jakarta/cactus/trunk/scratchpad/cactus2/samples/servlet/src/webapp/WEB-INF/web.xml ------------------------------------------------------------------------------ svn:eol-style = native Modified: jakarta/cactus/trunk/scratchpad/sampleTestApplication/build.xml URL: http://svn.apache.org/viewvc/jakarta/cactus/trunk/scratchpad/sampleTestApplication/build.xml?rev=642435&r1=642434&r2=642435&view=diff ============================================================================== --- jakarta/cactus/trunk/scratchpad/sampleTestApplication/build.xml (original) +++ jakarta/cactus/trunk/scratchpad/sampleTestApplication/build.xml Fri Mar 28 16:39:13 2008 @@ -1,63 +1,63 @@ -<project name="Servlet-test-sample" default="test" basedir="."> - <target name="init" depends=""> - <property name="src.dir" location="${basedir}/src"/> - <property name="dest.dir" location="${basedir}/target"/> - <property name="test.dir" location="${basedir}/test"/> - <property name="tomcat5x.home" location="C:\Documents and Settings\Petar\My Documents\tomcat"/> - <property name="test.reports.dir" location="${basedir}/test-reports"/> - <path id="cactus.classpath"> - <fileset dir="./lib"> - <include name="**/*.*"/> - </fileset> - </path> - <taskdef resource="cactus.tasks" - classpathref="cactus.classpath" /> - </target> - - <target name="prepare" depends="init"> - <mkdir dir="${dest.dir}"/> - <mkdir dir="${test.reports.dir}"/> - </target> - - <target name="compile" depends="prepare"> - <javac srcdir="${src.dir}" destdir="${dest.dir}" classpathref="cactus.classpath"/> - <javac srcdir="${test.dir}" destdir="${dest.dir}" classpathref="cactus.classpath"/> - </target> - - <target name="package" depends="compile"> - <war warfile="${basedir}/ready.war" webxml="${basedir}/metasrc/WEB-INF/web.xml"> - <classes dir="${dest.dir}"/> - </war> - </target> - - <target name="cactify" depends="package"> - <cactifywar srcfile="${basedir}/ready.war" destfile="${basedir}/ready-cactified.war"> - <filterredirector mapping="/test/filterRedirector"/> - <jspredirector mapping="/test/jspRedirector"/> - <servletredirector mapping="/test/servletRedirector"/> - </cactifywar> - </target> - - <target name="test" depends="prepare, compile, package, cactify"> - <cactusng warfile="${basedir}/ready-cactified.war"> - <classpath> - <path refid="cactus.classpath"/> - <pathelement location="${dest.dir}"/> - </classpath> - <containerset> - <cargo containerId="tomcat5x" home="${tomcat5x.home}"> - <configuration> - <property name="cargo.servlet.port" value="8080"/> - <property name="cargo.logging" value="high"/> - <deployable type="war" file="${basedir}/ready-cactified.war"/> - </configuration> - </cargo> - </containerset> - <classfileset dir="${dest.dir}" includes="**/*.class" /> - </cactusng> - </target> - - <target name="clean" depends="init"> - <delete dir="${dest.dir}"/> - </target> +<project name="Servlet-test-sample" default="test" basedir="."> + <target name="init" depends=""> + <property name="src.dir" location="${basedir}/src"/> + <property name="dest.dir" location="${basedir}/target"/> + <property name="test.dir" location="${basedir}/test"/> + <property name="tomcat5x.home" location="C:\Documents and Settings\Petar\My Documents\tomcat"/> + <property name="test.reports.dir" location="${basedir}/test-reports"/> + <path id="cactus.classpath"> + <fileset dir="./lib"> + <include name="**/*.*"/> + </fileset> + </path> + <taskdef resource="cactus.tasks" + classpathref="cactus.classpath" /> + </target> + + <target name="prepare" depends="init"> + <mkdir dir="${dest.dir}"/> + <mkdir dir="${test.reports.dir}"/> + </target> + + <target name="compile" depends="prepare"> + <javac srcdir="${src.dir}" destdir="${dest.dir}" classpathref="cactus.classpath"/> + <javac srcdir="${test.dir}" destdir="${dest.dir}" classpathref="cactus.classpath"/> + </target> + + <target name="package" depends="compile"> + <war warfile="${basedir}/ready.war" webxml="${basedir}/metasrc/WEB-INF/web.xml"> + <classes dir="${dest.dir}"/> + </war> + </target> + + <target name="cactify" depends="package"> + <cactifywar srcfile="${basedir}/ready.war" destfile="${basedir}/ready-cactified.war"> + <filterredirector mapping="/test/filterRedirector"/> + <jspredirector mapping="/test/jspRedirector"/> + <servletredirector mapping="/test/servletRedirector"/> + </cactifywar> + </target> + + <target name="test" depends="prepare, compile, package, cactify"> + <cactusng warfile="${basedir}/ready-cactified.war"> + <classpath> + <path refid="cactus.classpath"/> + <pathelement location="${dest.dir}"/> + </classpath> + <containerset> + <cargo containerId="tomcat5x" home="${tomcat5x.home}"> + <configuration> + <property name="cargo.servlet.port" value="8080"/> + <property name="cargo.logging" value="high"/> + <deployable type="war" file="${basedir}/ready-cactified.war"/> + </configuration> + </cargo> + </containerset> + <classfileset dir="${dest.dir}" includes="**/*.class" /> + </cactusng> + </target> + + <target name="clean" depends="init"> + <delete dir="${dest.dir}"/> + </target> </project> Propchange: jakarta/cactus/trunk/scratchpad/sampleTestApplication/build.xml ------------------------------------------------------------------------------ svn:eol-style = native Modified: jakarta/cactus/trunk/scratchpad/sampleTestApplication/metasrc/WEB-INF/web.xml URL: http://svn.apache.org/viewvc/jakarta/cactus/trunk/scratchpad/sampleTestApplication/metasrc/WEB-INF/web.xml?rev=642435&r1=642434&r2=642435&view=diff ============================================================================== --- jakarta/cactus/trunk/scratchpad/sampleTestApplication/metasrc/WEB-INF/web.xml (original) +++ jakarta/cactus/trunk/scratchpad/sampleTestApplication/metasrc/WEB-INF/web.xml Fri Mar 28 16:39:13 2008 @@ -1,35 +1,35 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> - -<!DOCTYPE web-app - PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" - "http://java.sun.com/dtd/web-app_2_3.dtd"> - -<web-app> - - <display-name> - The name of the application - </display-name> - <description> - C'mon, you know what goes into a description, don't you? - </description> - - <servlet> - <servlet-name>servName</servlet-name> - <description>Again, some description</description> - <servlet-class></servlet-class> - <init-param> - <param-name>foo</param-name> - <param-value>bar</param-value> - </init-param> - </servlet> - - <servlet-mapping> - <servlet-name>servName</servlet-name> - <url-pattern>*.serv</url-pattern> - </servlet-mapping> - - <session-config> - <session-timeout>30</session-timeout> - </session-config> - +<?xml version="1.0" encoding="ISO-8859-1"?> + +<!DOCTYPE web-app + PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" + "http://java.sun.com/dtd/web-app_2_3.dtd"> + +<web-app> + + <display-name> + The name of the application + </display-name> + <description> + C'mon, you know what goes into a description, don't you? + </description> + + <servlet> + <servlet-name>servName</servlet-name> + <description>Again, some description</description> + <servlet-class></servlet-class> + <init-param> + <param-name>foo</param-name> + <param-value>bar</param-value> + </init-param> + </servlet> + + <servlet-mapping> + <servlet-name>servName</servlet-name> + <url-pattern>*.serv</url-pattern> + </servlet-mapping> + + <session-config> + <session-timeout>30</session-timeout> + </session-config> + </web-app> Propchange: jakarta/cactus/trunk/scratchpad/sampleTestApplication/metasrc/WEB-INF/web.xml ------------------------------------------------------------------------------ svn:eol-style = native Modified: jakarta/cactus/trunk/scratchpad/sampleTestApplication/test/org/apache/cactus/sample/test/SampleTest.java URL: http://svn.apache.org/viewvc/jakarta/cactus/trunk/scratchpad/sampleTestApplication/test/org/apache/cactus/sample/test/SampleTest.java?rev=642435&r1=642434&r2=642435&view=diff ============================================================================== --- jakarta/cactus/trunk/scratchpad/sampleTestApplication/test/org/apache/cactus/sample/test/SampleTest.java (original) +++ jakarta/cactus/trunk/scratchpad/sampleTestApplication/test/org/apache/cactus/sample/test/SampleTest.java Fri Mar 28 16:39:13 2008 @@ -1,21 +1,21 @@ -package org.apache.cactus.sample.test; - -import org.apache.cactus.sample.SampleServlet; -import org.testng.Assert; -/** - * <code>Introduction50</code> is an introductory example to - * illustrates the most basic features of TestNG using JDK5+ type - * annotations. - */ -public class SampleTest -{ - /** - * A simple test method. - */ - //@Test - public void theTestMethod50() - { - SampleServlet sampleServlet = new SampleServlet(); - Assert.assertEquals(sampleServlet.doGet(), "Hello World"); - } +package org.apache.cactus.sample.test; + +import org.apache.cactus.sample.SampleServlet; +import org.testng.Assert; +/** + * <code>Introduction50</code> is an introductory example to + * illustrates the most basic features of TestNG using JDK5+ type + * annotations. + */ +public class SampleTest +{ + /** + * A simple test method. + */ + //@Test + public void theTestMethod50() + { + SampleServlet sampleServlet = new SampleServlet(); + Assert.assertEquals(sampleServlet.doGet(), "Hello World"); + } } Propchange: jakarta/cactus/trunk/scratchpad/sampleTestApplication/test/org/apache/cactus/sample/test/SampleTest.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: jakarta/cactus/trunk/scratchpad/testNG/ant-integration/src/main/java/org/apache/cactus/testng/ant/CactusNGTask.java URL: http://svn.apache.org/viewvc/jakarta/cactus/trunk/scratchpad/testNG/ant-integration/src/main/java/org/apache/cactus/testng/ant/CactusNGTask.java?rev=642435&r1=642434&r2=642435&view=diff ============================================================================== --- jakarta/cactus/trunk/scratchpad/testNG/ant-integration/src/main/java/org/apache/cactus/testng/ant/CactusNGTask.java (original) +++ jakarta/cactus/trunk/scratchpad/testNG/ant-integration/src/main/java/org/apache/cactus/testng/ant/CactusNGTask.java Fri Mar 28 16:39:13 2008 @@ -1,343 +1,343 @@ -/** - * - */ -package java.org.apache.cactus.testng.ant; - -import java.io.File; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.Map; - -import org.apache.cactus.integration.ant.CargoElement; -import org.apache.cactus.integration.ant.ContainerSet; -import org.apache.cactus.integration.ant.container.ContainerRunner; -import org.apache.cactus.integration.ant.container.ContainerWrapper; -import org.apache.cactus.integration.ant.deployment.DeployableFile; -import org.apache.cactus.integration.ant.deployment.EarParser; -import org.apache.cactus.integration.ant.deployment.WarParser; -import org.apache.tools.ant.BuildException; -import org.apache.tools.ant.Project; -import org.apache.tools.ant.taskdefs.optional.junit.JUnitTest; -import org.apache.tools.ant.types.FileSet; -import org.apache.tools.ant.types.Path; -import org.apache.tools.ant.types.Reference; -import org.apache.tools.ant.types.Environment.Variable; -import org.codehaus.cargo.container.Container; -import org.codehaus.cargo.util.log.AntLogger; -import org.testng.TestNGAntTask; - -/** - * @author Petar - * - */ -public class CactusNGTask extends TestNGAntTask { - - // Instance Variables ------------------------------------------------------ - /** - * The nested containerset element. - */ - private ContainerSet containerSet; - - - - /** - * The archive that contains the enterprise application that should be - * tested. - */ - private File earFile; - - /** - * The archive that contains the web-app that is ready to be tested. - */ - private File warFile; - - /** - * System properties that will be set in the container JVM. - */ - private Map systemProperties = new HashMap(); - - /** - * Additional classpath entries for the classpath that will be used to - * start the containers. - */ - private Path containerClasspath; - - // Constructors ------------------------------------------------------------ - - /** - * Constructor. - * - * @throws Exception If the constructor of JUnitTask throws an exception - */ - public CactusNGTask() throws Exception - { - // TODO: Fix comment for this constructor as it doesn't seem quite - // right. Explain why we don't call the super constructor? - } - - // Public Methods ---------------------------------------------------------- - - - /** - * @see org.apache.tools.ant.Task#init() - */ - public void init() - { - super.init(); - - setClasspathRef(new Reference(getProject(), "/org/aspectj/lang/JoinPoint.class")); - setClasspathRef(new Reference(getProject(), "/org/apache/cactus/ServletTestCase.class")); - setClasspathRef(new Reference(getProject(), - "/org/apache/cactus/integration/ant/CactusTask.class")); - setClasspathRef(new Reference(getProject(), "/org/apache/commons/logging/Log.class")); - setClasspathRef(new Reference(getProject(), "/org/apache/commons/httpclient/HttpClient.class")); - } - /** - * Returns a path of of testNG tests to execute; - * @return <code>Path</code> - */ - public String[] getClassPathForExecution() { - return super.getJavaCommand().getClasspath().translatePath(getProject(), System.getProperty("path.separator")); - } - - /** - * [EMAIL PROTECTED] - * @see org.apache.tools.ant.Task#execute() - */ - public void execute() throws BuildException - { - log("cactus tag is under major change " - + " consider to use cactustest instead" , Project.MSG_INFO); - if ((this.warFile == null) && (this.earFile == null)) - { - throw new BuildException("You must specify either the [warfile] or " - + "the [earfile] attribute"); - } - - if ((this.warFile != null) && (this.earFile != null)) - { - throw new BuildException("You must specify either the [warfile] or " - + "the [earfile] attribute but not both"); - } - - // Parse deployment descriptors for WAR or EAR files - DeployableFile deployableFile; - if (this.warFile != null) - { - deployableFile = WarParser.parse(this.warFile); - } - else - { - deployableFile = EarParser.parse(this.earFile); - } - - addRedirectorNameProperties(deployableFile); - - if (containerSet.getCargos() == null) - { - log("No cargo configurations specified, tests will run locally", - Project.MSG_VERBOSE); - super.execute(); - } - else - { - CargoElement[] cargoElements = this.containerSet.getCargos(); - Variable contextUrl = new Variable(); - contextUrl.setKey("cactus.contextURL"); - - addSysproperty(contextUrl); - - for (int i = 0; i < cargoElements.length; i++) - { - CargoElement element = (CargoElement) cargoElements[i]; - Container container = element.getCargoContainer(); - ContainerWrapper wrapper = new ContainerWrapper(container); - wrapper.setLogger(new AntLogger(this)); - - // Clone the DeployableFile instance as each container can - // override default deployment properties (e.g. port, context - // root, etc). - DeployableFile thisDeployable = null; - try - { - thisDeployable = (DeployableFile) deployableFile.clone(); - } - catch (CloneNotSupportedException e) - { - throw new BuildException(e); - } - - // Allow the container to override the default test context. - // This is to support container extensions to the web.xml file. - // Most containers allow defining the root context in these - // extensions. - wrapper.setSystemProperties(this.systemProperties); - - // Add extra classpath entries - wrapper.setContainerClasspath(this.containerClasspath); - - if (wrapper.isEnabled()) - { - wrapper.init(); - log("--------------------------------------------------" - + "---------------", Project.MSG_INFO); - log("Running tests against " + wrapper.getName() - + " @ " + wrapper.getBaseURL(), - Project.MSG_INFO); - log("--------------------------------------------------" - + "---------------", Project.MSG_INFO); - contextUrl.setValue(wrapper.getBaseURL() + "/" - + thisDeployable.getTestContext()); - executeInContainer(wrapper, thisDeployable); - } - } - } - } - - // Private Methods --------------------------------------------------------- - - /** - * Adds a Cactus system property for the client side JVM. - * - * @param theKey The property name - * @param theValue The property value - */ - private void addCactusClientProperty(String theKey, String theValue) - { - log("Adding Cactus client system property [" + theKey - + "] with value [" + theValue + "]", Project.MSG_VERBOSE); - Variable sysProperty = new Variable(); - sysProperty.setKey(theKey); - sysProperty.setValue(theValue); - super.addSysproperty(sysProperty); - } - - /** - * Adds a Cactus system property for the server side JVM. - * - * @param theProperty The system property to set in the container JVM - */ - private void addCactusServerProperty(Variable theProperty) - { - log("Adding Cactus server system property [" - + theProperty.getKey() + "] with value [" - + theProperty.getValue() + "]", Project.MSG_VERBOSE); - this.systemProperties.put(theProperty.getKey(), theProperty.getValue()); - } - - /** - * Adds a Cactus system property for the server side JVM. - * - * @param theKey The property name - * @param theValue The property value - */ - private void addCactusServerProperty(String theKey, String theValue) - { - Variable property = new Variable(); - property.setKey(theKey); - property.setValue(theValue); - addCactusServerProperty(property); - } - - /** - * Extracts the redirector mappings from the deployment descriptor and sets - * the corresponding system properties. - * - * @param theFile The file to deploy in the container - */ - private void addRedirectorNameProperties(DeployableFile theFile) - { - String filterRedirectorMapping = - theFile.getFilterRedirectorMapping(); - if (filterRedirectorMapping != null) - { - addCactusClientProperty("cactus.filterRedirectorName", - filterRedirectorMapping.substring(1)); - } - else - { - log("No mapping of the filter redirector found", - Project.MSG_VERBOSE); - } - - String jspRedirectorMapping = - theFile.getJspRedirectorMapping(); - if (jspRedirectorMapping != null) - { - addCactusClientProperty("cactus.jspRedirectorName", - jspRedirectorMapping.substring(1)); - } - else - { - log("No mapping of the JSP redirector found", - Project.MSG_VERBOSE); - } - - String servletRedirectorMapping = - theFile.getServletRedirectorMapping(); - if (servletRedirectorMapping != null) - { - addCactusClientProperty("cactus.servletRedirectorName", - servletRedirectorMapping.substring(1)); - } - else - { - throw new BuildException("The WAR has not been cactified"); - } - } - - /** - * Executes the unit tests in the given container. - * - * @param theWrapper The containerWrapper to run the tests against - * @param theFile the file to deploy in the container - */ - private void executeInContainer(ContainerWrapper theWrapper, - DeployableFile theFile) - { - log("Starting up container", Project.MSG_VERBOSE); - ContainerRunner runner = new ContainerRunner(theWrapper); - runner.setLogger(new AntLogger(getProject())); - try - { - URL url = new URL(theWrapper.getBaseURL() + "/" - + theFile.getTestContext() - + theFile.getServletRedirectorMapping() - + "?Cactus_Service=RUN_TEST"); - runner.setURL(url); - - runner.startUpContainer(); - log("Server name retrieved from 'Server' HTTP header: [" - + runner.getServerName() + "]", Project.MSG_VERBOSE); - try - { - String[] tests = getClassPathForExecution(); - //while (tests.hasMoreElements()) - //{ - //JUnitTest test = (JUnitTest) tests.nextElement(); - //if (test.shouldRun(getProject()) - //&& !theWrapper.isExcluded(test.getName())) - //{ - // if (theWrapper.getToDir() != null) - // { - // test.setTodir(theWrapper.getToDir()); - // } - super.execute(); - // } - //} - } - finally - { - log("Shutting down container", Project.MSG_VERBOSE); - runner.shutDownContainer(); - log("Container shut down", Project.MSG_VERBOSE); - } - } - catch (MalformedURLException mue) - { - throw new BuildException("Malformed test URL", mue); - } - } -} +/** + * + */ +package java.org.apache.cactus.testng.ant; + +import java.io.File; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; + +import org.apache.cactus.integration.ant.CargoElement; +import org.apache.cactus.integration.ant.ContainerSet; +import org.apache.cactus.integration.ant.container.ContainerRunner; +import org.apache.cactus.integration.ant.container.ContainerWrapper; +import org.apache.cactus.integration.ant.deployment.DeployableFile; +import org.apache.cactus.integration.ant.deployment.EarParser; +import org.apache.cactus.integration.ant.deployment.WarParser; +import org.apache.tools.ant.BuildException; +import org.apache.tools.ant.Project; +import org.apache.tools.ant.taskdefs.optional.junit.JUnitTest; +import org.apache.tools.ant.types.FileSet; +import org.apache.tools.ant.types.Path; +import org.apache.tools.ant.types.Reference; +import org.apache.tools.ant.types.Environment.Variable; +import org.codehaus.cargo.container.Container; +import org.codehaus.cargo.util.log.AntLogger; +import org.testng.TestNGAntTask; + +/** + * @author Petar + * + */ +public class CactusNGTask extends TestNGAntTask { + + // Instance Variables ------------------------------------------------------ + /** + * The nested containerset element. + */ + private ContainerSet containerSet; + + + + /** + * The archive that contains the enterprise application that should be + * tested. + */ + private File earFile; + + /** + * The archive that contains the web-app that is ready to be tested. + */ + private File warFile; + + /** + * System properties that will be set in the container JVM. + */ + private Map systemProperties = new HashMap(); + + /** + * Additional classpath entries for the classpath that will be used to + * start the containers. + */ + private Path containerClasspath; + + // Constructors ------------------------------------------------------------ + + /** + * Constructor. + * + * @throws Exception If the constructor of JUnitTask throws an exception + */ + public CactusNGTask() throws Exception + { + // TODO: Fix comment for this constructor as it doesn't seem quite + // right. Explain why we don't call the super constructor? + } + + // Public Methods ---------------------------------------------------------- + + + /** + * @see org.apache.tools.ant.Task#init() + */ + public void init() + { + super.init(); + + setClasspathRef(new Reference(getProject(), "/org/aspectj/lang/JoinPoint.class")); + setClasspathRef(new Reference(getProject(), "/org/apache/cactus/ServletTestCase.class")); + setClasspathRef(new Reference(getProject(), + "/org/apache/cactus/integration/ant/CactusTask.class")); + setClasspathRef(new Reference(getProject(), "/org/apache/commons/logging/Log.class")); + setClasspathRef(new Reference(getProject(), "/org/apache/commons/httpclient/HttpClient.class")); + } + /** + * Returns a path of of testNG tests to execute; + * @return <code>Path</code> + */ + public String[] getClassPathForExecution() { + return super.getJavaCommand().getClasspath().translatePath(getProject(), System.getProperty("path.separator")); + } + + /** + * [EMAIL PROTECTED] + * @see org.apache.tools.ant.Task#execute() + */ + public void execute() throws BuildException + { + log("cactus tag is under major change " + + " consider to use cactustest instead" , Project.MSG_INFO); + if ((this.warFile == null) && (this.earFile == null)) + { + throw new BuildException("You must specify either the [warfile] or " + + "the [earfile] attribute"); + } + + if ((this.warFile != null) && (this.earFile != null)) + { + throw new BuildException("You must specify either the [warfile] or " + + "the [earfile] attribute but not both"); + } + + // Parse deployment descriptors for WAR or EAR files + DeployableFile deployableFile; + if (this.warFile != null) + { + deployableFile = WarParser.parse(this.warFile); + } + else + { + deployableFile = EarParser.parse(this.earFile); + } + + addRedirectorNameProperties(deployableFile); + + if (containerSet.getCargos() == null) + { + log("No cargo configurations specified, tests will run locally", + Project.MSG_VERBOSE); + super.execute(); + } + else + { + CargoElement[] cargoElements = this.containerSet.getCargos(); + Variable contextUrl = new Variable(); + contextUrl.setKey("cactus.contextURL"); + + addSysproperty(contextUrl); + + for (int i = 0; i < cargoElements.length; i++) + { + CargoElement element = (CargoElement) cargoElements[i]; + Container container = element.getCargoContainer(); + ContainerWrapper wrapper = new ContainerWrapper(container); + wrapper.setLogger(new AntLogger(this)); + + // Clone the DeployableFile instance as each container can + // override default deployment properties (e.g. port, context + // root, etc). + DeployableFile thisDeployable = null; + try + { + thisDeployable = (DeployableFile) deployableFile.clone(); + } + catch (CloneNotSupportedException e) + { + throw new BuildException(e); + } + + // Allow the container to override the default test context. + // This is to support container extensions to the web.xml file. + // Most containers allow defining the root context in these + // extensions. + wrapper.setSystemProperties(this.systemProperties); + + // Add extra classpath entries + wrapper.setContainerClasspath(this.containerClasspath); + + if (wrapper.isEnabled()) + { + wrapper.init(); + log("--------------------------------------------------" + + "---------------", Project.MSG_INFO); + log("Running tests against " + wrapper.getName() + + " @ " + wrapper.getBaseURL(), + Project.MSG_INFO); + log("--------------------------------------------------" + + "---------------", Project.MSG_INFO); + contextUrl.setValue(wrapper.getBaseURL() + "/" + + thisDeployable.getTestContext()); + executeInContainer(wrapper, thisDeployable); + } + } + } + } + + // Private Methods --------------------------------------------------------- + + /** + * Adds a Cactus system property for the client side JVM. + * + * @param theKey The property name + * @param theValue The property value + */ + private void addCactusClientProperty(String theKey, String theValue) + { + log("Adding Cactus client system property [" + theKey + + "] with value [" + theValue + "]", Project.MSG_VERBOSE); + Variable sysProperty = new Variable(); + sysProperty.setKey(theKey); + sysProperty.setValue(theValue); + super.addSysproperty(sysProperty); + } + + /** + * Adds a Cactus system property for the server side JVM. + * + * @param theProperty The system property to set in the container JVM + */ + private void addCactusServerProperty(Variable theProperty) + { + log("Adding Cactus server system property [" + + theProperty.getKey() + "] with value [" + + theProperty.getValue() + "]", Project.MSG_VERBOSE); + this.systemProperties.put(theProperty.getKey(), theProperty.getValue()); + } + + /** + * Adds a Cactus system property for the server side JVM. + * + * @param theKey The property name + * @param theValue The property value + */ + private void addCactusServerProperty(String theKey, String theValue) + { + Variable property = new Variable(); + property.setKey(theKey); + property.setValue(theValue); + addCactusServerProperty(property); + } + + /** + * Extracts the redirector mappings from the deployment descriptor and sets + * the corresponding system properties. + * + * @param theFile The file to deploy in the container + */ + private void addRedirectorNameProperties(DeployableFile theFile) + { + String filterRedirectorMapping = + theFile.getFilterRedirectorMapping(); + if (filterRedirectorMapping != null) + { + addCactusClientProperty("cactus.filterRedirectorName", + filterRedirectorMapping.substring(1)); + } + else + { + log("No mapping of the filter redirector found", + Project.MSG_VERBOSE); + } + + String jspRedirectorMapping = + theFile.getJspRedirectorMapping(); + if (jspRedirectorMapping != null) + { + addCactusClientProperty("cactus.jspRedirectorName", + jspRedirectorMapping.substring(1)); + } + else + { + log("No mapping of the JSP redirector found", + Project.MSG_VERBOSE); + } + + String servletRedirectorMapping = + theFile.getServletRedirectorMapping(); + if (servletRedirectorMapping != null) + { + addCactusClientProperty("cactus.servletRedirectorName", + servletRedirectorMapping.substring(1)); + } + else + { + throw new BuildException("The WAR has not been cactified"); + } + } + + /** + * Executes the unit tests in the given container. + * + * @param theWrapper The containerWrapper to run the tests against + * @param theFile the file to deploy in the container + */ + private void executeInContainer(ContainerWrapper theWrapper, + DeployableFile theFile) + { + log("Starting up container", Project.MSG_VERBOSE); + ContainerRunner runner = new ContainerRunner(theWrapper); + runner.setLogger(new AntLogger(getProject())); + try + { + URL url = new URL(theWrapper.getBaseURL() + "/" + + theFile.getTestContext() + + theFile.getServletRedirectorMapping() + + "?Cactus_Service=RUN_TEST"); + runner.setURL(url); + + runner.startUpContainer(); + log("Server name retrieved from 'Server' HTTP header: [" + + runner.getServerName() + "]", Project.MSG_VERBOSE); + try + { + String[] tests = getClassPathForExecution(); + //while (tests.hasMoreElements()) + //{ + //JUnitTest test = (JUnitTest) tests.nextElement(); + //if (test.shouldRun(getProject()) + //&& !theWrapper.isExcluded(test.getName())) + //{ + // if (theWrapper.getToDir() != null) + // { + // test.setTodir(theWrapper.getToDir()); + // } + super.execute(); + // } + //} + } + finally + { + log("Shutting down container", Project.MSG_VERBOSE); + runner.shutDownContainer(); + log("Container shut down", Project.MSG_VERBOSE); + } + } + catch (MalformedURLException mue) + { + throw new BuildException("Malformed test URL", mue); + } + } +} Propchange: jakarta/cactus/trunk/scratchpad/testNG/ant-integration/src/main/java/org/apache/cactus/testng/ant/CactusNGTask.java ------------------------------------------------------------------------------ svn:eol-style = native --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]