o i'm not going to subject users to surefire yet, i will completely container

it's use to maven-components.


git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@114684 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
jvanzyl committed 2004-02-05 14:43:49 +00:00
1 parent 80246ea162
commit 4894c01b2b
13 files changed
-658

No files matched your search

-7
View File
@@ -1,7 +0,0 @@
target
velocity.log
maven.log
.classpath
.project
*.ipr
*.iws
-175
View File
@@ -1,175 +0,0 @@
<?xml version="1.0"?>
<project xmlns:j="jelly:core"
xmlns:maven="jelly:maven"
xmlns:u="jelly:util"
xmlns:define="jelly:define">
<goal name="test"
description="Test the application"
prereqs="test:test"/>
<goal name="test:prepare-filesystem"
description="Create the needed directory structure">
<mkdir dir="${maven.test.dest}"/>
<mkdir dir="${maven.test.reportsDirectory}"/>
</goal>
<goal name="test:compile"
description="Compile the TestCases and TestSuites"
prereqs="java:compile,java:jar-resources,test:prepare-filesystem,test:test-resources">
<j:set var="maven.test.searchdir" value="${maven.test.dest}"/>
<j:if test="${context.getVariable('maven.test.search.classdir') == null}">
<j:set var="maven.test.searchdir" value="${pom.build.unitTestSourceDirectory}"/>
</j:if>
<j:if test="${unitTestSourcesPresent == 'true'}">
<javac
srcdir="${pom.testCompileSourceRoots}"
classpath="${pom.dependencyClasspath}:${maven.build.dest}:${plugin.getDependencyPath('junit')}"
destdir="${maven.test.dest}"
excludes="**/package.html"
debug="${maven.compile.debug}"
deprecation="${maven.compile.deprecation}"
optimize="${maven.compile.optimize}">
<j:if test="${context.getVariable('maven.test.source') != null}">
<setProperty name="source" value="${maven.test.source}" />
</j:if>
<j:if test="${context.getVariable('maven.compile.compilerargs') != null}">
<compilerarg line="${maven.compile.compilerargs}" />
</j:if>
<j:if test="${context.getVariable('maven.compile.encoding') != null}">
<setProperty name="encoding" value="${maven.compile.encoding}" />
</j:if>
<j:if test="${context.getVariable('maven.compile.executable') != null}">
<setProperty name="executable" value="${maven.compile.executable}" />
</j:if>
<j:if test="${context.getVariable('maven.compile.fork') != null}">
<setProperty name="fork" value="${maven.compile.fork}" />
</j:if>
<j:if test="${context.getVariable('maven.compile.source') != null}">
<setProperty name="source" value="${maven.compile.source}" />
</j:if>
<j:if test="${context.getVariable('maven.compile.verbose') != null}">
<setProperty name="verbose" value="${maven.compile.verbose}" />
</j:if>
</javac>
</j:if>
<j:if test="${!unitTestSourcesPresent}">
<echo>No test source files to compile.</echo>
</j:if>
</goal>
<goal name="test:test"
description="Test the application"
prereqs="test:compile">
<j:if test="${unitTestSourcesPresent == 'true' and context.getVariable('maven.test.skip') != 'true'}">
<j:useBean class="org.apache.maven.test.SurefirePlugin" var="surefire"/>
${surefire.setProject(pom)}
${surefire.execute()}
<j:set var="maven.test.failure" value="${testRunner.failures()}"/>
<j:if test="${maven.test.failure}">
<j:set var="ignore__" value="${maven.test.failure.ignore}X"/>
<j:if test="${ignore__ == 'X'}">
<fail message="There were test failures."/>
</j:if>
</j:if>
</j:if>
<j:if test="${!unitTestSourcesPresent}">
<echo>No tests to run.</echo>
</j:if>
</goal>
<goal name="test:single"
description="Execute a single test defined using the 'testcase' variable"
prereqs="test:compile">
<j:if test="${unitTestSourcesPresent == 'true'}">
</j:if>
<j:if test="${!unitTestSourcesPresent}">
<echo>No tests to run.</echo>
</j:if>
</goal>
<goal name="test:match"
description="Execute all the tests matching the given 'testmatch' variable"
prereqs="test:compile">
<j:if test="${unitTestSourcesPresent == 'true'}">
</j:if>
<j:if test="${!unitTestSourcesPresent}">
<echo>No tests to run.</echo>
</j:if>
</goal>
<goal name="test:single-test"
description="[deprecated] please use the test:single goal instead">
<echo>[deprecated] please use the test:single goal instead</echo>
<attainGoal name="test:single"/>
</goal>
<goal name="test:match-test"
description="[deprecated] please use the test:match goal instead">
<echo>[deprecated] please use the test:match goal instead</echo>
<attainGoal name="test:match"/>
</goal>
<goal name="test:eclipse">
<echo>Used by eclipse to drag in test plugin context</echo>
</goal>
<!-- ================================================================== -->
<!-- T E S T R E S O U R C E S -->
<!-- ================================================================== -->
<goal name="test:test-resources"
description="Copy any resources that must be present for run tests"
prereqs="test:prepare-filesystem">
<j:if test="${unitTestSourcesPresent}">
<j:if test="${pom.build.unitTest != null}">
<j:if test="${!pom.build.unitTest.resources.isEmpty()}">
<maven:copy-resources
resources="${pom.build.unitTest.resources}"
todir="${maven.test.dest}"
/>
</j:if>
</j:if>
</j:if>
</goal>
<define:taglib uri="test">
<define:tag name="dependency-handle">
<!-- XXX Use this tag to allow this plugin to be loaded into another -->
</define:tag>
</define:taglib>
</project>
-14
View File
@@ -1,14 +0,0 @@
# -------------------------------------------------------------------
# P L U G I N P R O P E R T I E S
# -------------------------------------------------------------------
# JUnit test plugin.
# -------------------------------------------------------------------
maven.junit.fork = no
maven.junit.dir = ${basedir}
maven.junit.usefile = true
maven.junit.printSummary=true
maven.test.dest = ${maven.build.dir}/test-classes
maven.test.reportsDirectory = ${maven.build.dir}/test-reports
maven.test.skip = false
maven.junit.jvmargs=
-7
View File
@@ -1,7 +0,0 @@
# -------------------------------------------------------------------
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
maven.xdoc.date=left
## maven.xdoc.version=${pom.currentVersion}
maven.license.licenseFile=${basedir}/../../../LICENSE.txt
-37
View File
@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project>
<extend>../project.xml</extend>
<pomVersion>3</pomVersion>
<id>maven-surefire-plugin</id>
<artifactId>maven-surefire-plugin</artifactId>
<name>Maven SureFire Plug-in</name>
<currentVersion>1.0-SNAPSHOT</currentVersion>
<description/>
<shortDescription>Run JUnit tests</shortDescription>
<url>http://maven.apache.org/reference/plugins/surefire/</url>
<siteDirectory>/www/maven.apache.org/reference/plugins/surefire/</siteDirectory>
<repository>
<connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:maven/src/plugins-build/surefire/</connection>
<url>http://cvs.apache.org/viewcvs/maven/src/plugins-build/test/</url>
</repository>
<developers>
</developers>
<dependencies>
<dependency>
<groupId>maven</groupId>
<artifactId>maven-model</artifactId>
<version>2.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>maven</groupId>
<artifactId>maven-project</artifactId>
<version>2.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>surefire</groupId>
<artifactId>surefire-booter</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</project>
@@ -1,63 +0,0 @@
package org.apache.maven.test;
import org.apache.maven.artifact.MavenArtifact;
import org.apache.maven.project.MavenProject;
import org.codehaus.surefire.SurefireBooter;
import java.io.File;
import java.util.Iterator;
import java.util.List;
/**
*
*
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
*
* @version $Id: SurefirePlugin.java,v 1.1 2004/02/01 21:06:09 jvanzyl Exp $
*/
public class SurefirePlugin
{
private MavenProject project;
public void setProject( MavenProject project )
{
this.project = project;
}
public void execute()
throws Exception
{
String mavenRepoLocal = project.getProperty( "maven.repo.local" );
String basedir = project.getFile().getParentFile().getPath();
System.setProperty( "basedir", basedir );
List includes = project.getBuild().getUnitTest().getIncludes();
List excludes = project.getBuild().getUnitTest().getExcludes();
SurefireBooter surefireBooter = new SurefireBooter();
surefireBooter.addBattery( "org.codehaus.surefire.battery.DirectoryBattery", new Object[]{basedir, includes, excludes} );
surefireBooter.addClassPathUrl( new File( mavenRepoLocal, "junit/jars/junit-3.8.1.jar" ).getPath() );
surefireBooter.addClassPathUrl( new File( mavenRepoLocal, "surefire/jars/surefire-1.0.jar" ).getPath() );
surefireBooter.addClassPathUrl( new File( basedir, "target/classes" ).getPath() );
surefireBooter.addClassPathUrl( new File( basedir, "target/test-classes" ).getPath() );
for ( Iterator i = project.getArtifacts().iterator(); i.hasNext(); )
{
MavenArtifact artifact = (MavenArtifact) i.next();
surefireBooter.addClassPathUrl( artifact.getFile().getPath() );
}
surefireBooter.addReport( "org.codehaus.surefire.report.ConsoleReport" );
surefireBooter.run();
}
}
-13
View File
@@ -1,13 +0,0 @@
#!/bin/sh
rm -rf target
maven jar:jar
( cd ~/.maven/plugins ; rm -rf maven-test-plugin* )
rm -f ~/maven/plugins/maven-test-plugin*.jar
cp target/maven-test-plugin*.jar ~/maven/plugins
rm -f ~/.maven/plugins/*.cache
-1
View File
@@ -1 +0,0 @@
stylesheets
-50
View File
@@ -1,50 +0,0 @@
<?xml version="1.0"?>
<document>
<properties>
<title>Changes</title>
<author email="dion@multitask.com.au">dIon Gillard</author>
</properties>
<body>
<release version="1.4" date="2003-09-29">
<action dev="dion" type="update">
Apply MAVEN-309. Reorganise classpaths so that it's test, build, dependencies
and then JUnit
</action>
<action dev="jstrachan" type="fix">
You can now specify whether the source (java) or classes (class) files
are searched when using the test plugin via the property:
maven.test.search.classdir. It defaults to use (java) to preserve
backwards compatibilty. Using (class) allows you to work with alternative
languages that compile to bytecode like
<a href="http://groovy.codehaus.org/">Groovy</a>
</action>
<action dev="evenisse" type="fix">
Check if unitTest tag is present in pom before copy resources.
</action>
</release>
<release version="1.3" date="Unknown">
<action dev="evenisse" type="add">
Add jvmarg support for junit.
Add properties documentation.
</action>
</release>
<release version="1.2" date="2003-02-11">
<action dev="evenisse" type="fix">
Fixed classpath for test:ui, test:single and test:match goals.
</action>
<action dev="dion" type="fix">
Added xmlapis and xerces to project dependencies as per MAVEN-106
bug report
</action>
</release>
<release version="1.1" date="2002-10-01">
<action dev="vmassol" type="fix">
The test plugin now works again if the project has not
tests defined. The introduction of the &lt;test:test-resources&gt;
goal had broken this feature.
</action>
</release>
</body>
</document>
-52
View File
@@ -1,52 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>Maven test Plug-in Goals</title>
<author email="dion@apache.org">dIon Gillard</author>
</properties>
<body>
<goals>
<goal>
<name>test</name>
<description>Test the application</description>
</goal>
<goal>
<name>test:compile</name>
<description>Compile the TestCases and TestSuites</description>
</goal>
<goal>
<name>test:match</name>
<description>Execute all the tests matching the given 'testmatch' variable</description>
</goal>
<goal>
<name>test:match-test</name>
<description>[deprecated] please use the test:match goal instead</description>
</goal>
<goal>
<name>test:prepare-filesystem</name>
<description>Create the needed directory structure</description>
</goal>
<goal>
<name>test:single</name>
<description>Execute a single test defined using the 'testcase' variable</description>
</goal>
<goal>
<name>test:single-test</name>
<description>[deprecated] please use the test:single goal instead</description>
</goal>
<goal>
<name>test:test</name>
<description>Test the application</description>
</goal>
<goal>
<name>test:test-resources</name>
<description>Copy any resources that must be present for run tests</description>
</goal>
<goal>
<name>test:ui</name>
<description>Starts the Swing TestRunner front end</description>
</goal>
</goals>
</body>
</document>
-16
View File
@@ -1,16 +0,0 @@
<?xml version="1.0"?>
<document>
<properties>
<title>Maven Test Plugin</title>
<author email="jason@zenplex.com">Jason van Zyl</author>
</properties>
<body>
<section name="Maven Test Plugin">
<p>
This plug-in provides your basic JUnit testing facilities.
</p>
</section>
</body>
</document>
-16
View File
@@ -1,16 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="Maven Test Plugin">
<title>Maven Test Plugin</title>
<body>
<links>
<item name="Maven" href="http://maven.apache.org/"/>
<item name="JUnit" href="http://junit.sourceforge.net/"/>
</links>
<menu name="Overview">
<item name="Goals" href="/goals.html"/>
<item name="Properties" href="/properties.html"/>
</menu>
</body>
</project>
-207
View File
@@ -1,207 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<document>
<properties>
<title>Test Properties</title>
<author email="smor@apache.org">Stéphane MOR</author>
</properties>
<body>
<section name="Test Settings">
<table>
<tr><th>Property</th><th>Optional?</th><th>Description</th></tr>
<tr>
<td>maven.junit.fork</td>
<td>Yes</td>
<td>
When using Java 1.4, it may be necessary to fork the JUnit
tests to prevent XML parser issues. The default value is
<code>no</code>.
</td>
</tr>
<tr>
<td>maven.junit.dir</td>
<td>Yes</td>
<td>
The directory to invoke the VM in. (ignored if fork is disabled).
The default value is <code>${basedir}</code>.
</td>
</tr>
<tr>
<td>maven.junit.usefile</td>
<td>Yes</td>
<td>
If this value is set to false, JUnit test run details will appear on
the console as the tests are executed. If not, they are stored in
a file in the <code>test-reports</code> directory. The default value
is <code>true</code>.
</td>
</tr>
<tr>
<td>maven.junit.printSummary</td>
<td>Yes</td>
<td>
If this value is set to false, JUnit test run details will not
include test summary information for a suite. Default value is
<code>true</code>. This parameter corresponds to the JUnit Ant
task <code>printSummary</code> attribute.
</td>
</tr>
<tr>
<td>maven.test.dest</td>
<td>Yes</td>
<td>
Specifies the unit test classes directory. This is the
location where the java classes for the test source
code will be generated to. The default value is
<code>${maven.build.dir}/test-classes</code>.
</td>
</tr>
<tr>
<td>maven.test.skip</td>
<td>Yes</td>
<td>
Set this to 'true' to bypass unit tests entirely. Its use
is <b>NOT RECOMMENDED</b>, but quite convenient on occasion.
</td>
</tr>
<tr>
<td>maven.test.failure.ignore</td>
<td>Yes</td>
<td>
Set this to any value to ignore a failure during testing.
Its use is <b>NOT RECOMMENDED</b>, but quite convenient on occasion.
</td>
</tr>
<tr>
<td>maven.test.source</td>
<td>Yes</td>
<td>
<p>
Provide source compatibility with a specific release
</p>
<p>
Corresponds to the <code>source</code> attribute for the ant
<a href="http://ant.apache.org/manual/CoreTasks/javac.html">javac</a>
task.
</p>
</td>
</tr>
<tr>
<td>maven.iutest.dest</td>
<td>Yes</td>
<td>
Specifies the integration unit test classes directory.
This is the location where the java classes for the
integration unit test source code will be generated to.
The default value is
<code>${maven.build.dir}/iutest-classes</code>.
</td>
</tr>
<tr>
<td>maven.iutest.dir</td>
<td>Yes</td>
<td>
Specifies the integration unit test source directory.
This property should never be overridden as the value is
determined directly from the project descriptor. The
default value is
<code>${maven.integrationUnitTestSourceDirectory}</code>.
</td>
</tr>
<tr>
<td>maven.out.test.dir</td>
<td>Yes</td>
<td>
Specifies the directory where the integration unit testing
is run. The default value is <code>${build.dir}/iutest</code>.
</td>
</tr>
<tr>
<td>maven.webapp.dir</td>
<td>Yes</td>
<td>
Specifies the directory of the web application used to
perform integration unit testing. The default value is
<code>${iutest.dir}/testapp</code>.
</td>
</tr>
<tr>
<td>maven.conf.test.dir</td>
<td>Yes</td>
<td>
Specifies the configuration directory used to build the
web application used for integration unit testing. The
default value is <code>${iutest.dir}/cactus</code>.
</td>
</tr>
<tr>
<td>maven.tomcat.home</td>
<td>Yes</td>
<td>
Specifies your local Tomcat installation directory.
The default value is <code>${tdk.home}</code>. If
<code>${tdk.home}</code> is not specified in your
<code>${user.home}/build.properties</code>, you should set
this property. This is used for the integration unit
testing.
</td>
</tr>
<tr>
<td>maven.test.port</td>
<td>Yes</td>
<td>
Specifies the port that Tomcat will use for integration
unit testing. The default value is <code>8192</code>.
</td>
</tr>
<tr>
<td>maven.junit.jvmargs</td>
<td>Yes</td>
<td>
If fork is enabled, additional parameters may be passed to the new VM.
You can specify some args separate by space.
Each arg is describe in sub properties.
Sample :
<source><![CDATA[
maven.junit.jvmargs=-Xmx160m -verbose
]]>
</source>
</td>
</tr>
<tr>
<td>maven.junit.sysproperties</td>
<td>Yes</td>
<td>
Use this property elements to specify system properties required
by the class. These properties will be made available to the VM during
the execution of the test (either Maven's VM or the forked VM, if fork is enabled).
You can specify system properties separate by space.
Each properties is describe in sub properties.
Sample :
<source><![CDATA[
maven.junit.sysproperties=prop1 basedir
prop1=your value
basedir=${basedir}
]]>
</source>
</td>
</tr>
<tr>
<td>maven.test.search.classdir</td>
<td>Yes</td>
<td>
Use this property to specify that JUnit should search the test classes directory
rather than the source directory. This allows for test cases to be written in other
languages such as Groovy which generate bytecode that can then be used by this plugin.
Sample :
<source><![CDATA[
maven.test.search.classdir=true
]]>
</source>
</td>
</tr>
</table>
</section>
</body>
</document>