You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by gi...@apache.org on 2018/02/28 07:01:46 UTC
[31/47] ant git commit: Use HTML 5(-ish), fix links
http://git-wip-us.apache.org/repos/asf/ant/blob/66b52f99/manual/Tasks/junit.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/junit.html b/manual/Tasks/junit.html
index 2d65b8b..572e20d 100644
--- a/manual/Tasks/junit.html
+++ b/manual/Tasks/junit.html
@@ -24,250 +24,192 @@
<h2 id="junit">JUnit</h2>
<h3>Description</h3>
-<p>This task runs tests from the JUnit testing framework. The latest
-version of the framework can be found at
-<a href="http://www.junit.org">http://www.junit.org</a>.
-This task has been tested with JUnit 3.0 up to JUnit 3.8.2; it won't
-work with versions prior to JUnit 3.0. It also works with JUnit 4.0, including
-"pure" JUnit 4 tests using only annotations and no <code>JUnit4TestAdapter</code>.</p>
+<p>This task runs tests from the JUnit testing framework. The latest version of the framework can be
+found at <a href="https://junit.org">https://junit.org</a>. This task has been tested with JUnit
+3.0 up to JUnit 3.8.2; it won't work with versions prior to JUnit 3.0. It also works with JUnit 4.x,
+including "pure" JUnit 4 tests using only annotations and no <code>JUnit4TestAdapter</code>.</p>
<p><strong>Note</strong>: This task depends on external libraries not included
in the Apache Ant distribution. See <a href="../install.html#librarydependencies">
-Library Dependencies</a> for more information.
-</p>
-<p>
-<strong>Note</strong>:
-You must have <code>junit.jar</code> available.
-You can do one of:
-</p>
+Library Dependencies</a> for more information.</p>
+<p><strong>Note</strong>: You must have <samp>junit.jar</samp> available. You can do one of:</p>
<ol>
-<li>
-Put both <code>junit.jar</code> and <code>ant-junit.jar</code> in
-<code>ANT_HOME/lib</code>.
-</li>
-<li>
-Do not put either in <code>ANT_HOME/lib</code>, and instead
-include their locations in your <code>CLASSPATH</code> environment variable.
-</li>
-<li>
-Add both JARs to your classpath using <code>-lib</code>.
-</li>
-<li>
-Specify the locations of both JARs using
-a <code><classpath></code> element in a <code><taskdef></code> in the build file.
-</li>
-<li>
-Leave <code>ant-junit.jar</code> in its default location in <code>ANT_HOME/lib</code>
-but include <code>junit.jar</code> in the <code><classpath></code> passed
-to <code><junit></code>. <em>Since Ant 1.7</em>
-</li>
+ <li>Put both <samp>junit.jar</samp> and <samp>ant-junit.jar</samp>
+ in <code>ANT_HOME/lib</code>.</li>
+ <li>Do not put either in <code>ANT_HOME/lib</code>, and instead include their locations in
+ your <code>CLASSPATH</code> environment variable.</li>
+ <li>Add both JARs to your classpath using <code>-lib</code>.</li>
+ <li>Specify the locations of both JARs using a <code><classpath></code> element in
+ a <code><taskdef></code> in the build file.</li>
+ <li>Leave <samp>ant-junit.jar</samp> in its default location in <code>ANT_HOME/lib</code> but
+ include <samp>junit.jar</samp> in the <code><classpath></code> passed
+ to <code><junit></code>. <em>Since Ant 1.7</em></li>
</ol>
-<p>
-See <a href="http://ant.apache.org/faq.html#delegating-classloader" target="_top">the
-FAQ</a> for details.
-</p>
+<p>See <a href="https://ant.apache.org/faq.html#delegating-classloader" target="_top">the FAQ</a>
+for details.</p>
-<p>Tests are defined by nested <code>test</code> or
-<code>batchtest</code> tags (see <a href="#nested">nested
-elements</a>).</p>
+<p>Tests are defined by nested <code>test</code> or <code>batchtest</code> tags
+(see <a href="#nested">nested elements</a>).</p>
<h3>Parameters</h3>
-<table>
-<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td valign="top"><b>Required</b></td>
-</tr>
+<table class="attr">
<tr>
- <td valign="top">printsummary</td>
- <td valign="top">Print one-line statistics for each testcase. Can
- take the values <code>on</code>,
- <code>off</code>, and
- <code>withOutAndErr</code>.
- <code>withOutAndErr</code> is the same
- as <code>on</code> but also includes the output of the test
- as written to <code>System.out</code> and <code>System.err</code>.</td>
- <td align="center" valign="top">No; default is <code>off</code>.</td>
- </tr>
- <tr>
- <td valign="top">fork</td>
- <td valign="top">Run the tests in a separate VM.</td>
- <td align="center" valign="top">No; default is <code>off</code>.</td>
- </tr>
- <tr>
- <td valign="top">forkmode</td>
- <td valign="top">Controls how many Java Virtual Machines get
- created if you want to fork some tests. Possible values are
- "perTest" (the default), "perBatch" and
- "once". "once" creates only a single Java VM
- for all tests while "perTest" creates a new VM for each
- TestCase class. "perBatch" creates a VM for each nested
- <code><batchtest></code> and one collecting all nested
- <code><test></code>s. Note that only tests with the same
- settings of <code>filtertrace</code>, <code>haltonerror</code>,
- <code>haltonfailure</code>, <code>errorproperty</code> and
- <code>failureproperty</code> can share a VM, so even if you set
- <code>forkmode</code> to "once", Ant may have to create
- more than a single Java VM. This attribute is ignored for tests
- that don't get forked into a new Java VM. <em>Since Ant 1.6.2</em></td>
- <td align="center" valign="top">No; default is <code>perTest</code>.</td>
- </tr>
- <tr>
- <td valign="top">haltonerror</td>
- <td valign="top">Stop the build process if an error occurs during the test
- run.</td>
- <td align="center" valign="top">No; default is <code>off</code>.</td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
-<tr>
- <td valign="top">errorproperty</td>
- <td valign="top">The name of a property to set in the event of an error.</td>
- <td align="center" valign="top">No</td>
-</tr>
<tr>
- <td valign="top">haltonfailure</td>
- <td valign="top">Stop the build process if a test fails (errors are
- considered failures as well).</td>
- <td align="center" valign="top">No; default is <code>off</code>.</td>
+ <td>printsummary</td>
+ <td>Print one-line statistics for each testcase. Can take the values <q>on</q>, <q>off</q>,
+ and <q>withOutAndErr</q>. <q>withOutAndErr</q> is the same as <q>on</q> but also includes the
+ output of the test as written to <code>System.out</code> and <code>System.err</code>.</td>
+ <td>No; default is <q>off</q></td>
</tr>
-<tr>
- <td valign="top">failureproperty</td>
- <td valign="top">The name of a property to set in the event of a failure
- (errors are considered failures as well).</td>
- <td align="center" valign="top">No.</td>
-</tr>
<tr>
- <td valign="top">filtertrace</td>
- <td valign="top">Filter out Junit and Ant stack frames from error and failure stack traces.</td>
- <td align="center" valign="top">No; default is <code>on</code>.</td>
+ <td>fork</td>
+ <td>Run the tests in a separate JVM.</td>
+ <td>No; default is <q>off</q></td>
</tr>
<tr>
- <td valign="top">timeout</td>
- <td valign="top">Cancel the individual tests if they don't finish
- in the given time (measured in milliseconds). Ignored if
- <code>fork</code> is disabled. When running multiple tests
- inside the same Java VM (see forkMode), timeout applies to the
- time that all tests use together, not to an individual
- test.</td>
- <td align="center" valign="top">No</td>
+ <td>forkmode</td>
+ <td>Controls how many JVMs get created if you want to fork some tests. Possible values
+ are <q>perTest</q> (the default), <q>perBatch</q> and <q>once</q>. <q>once</q> creates only a
+ single JVM for all tests while <q>perTest</q> creates a new JVM for each TestCase
+ class. <q>perBatch</q> creates a JVM for each nested <code><batchtest></code> and one
+ collecting all nested <code><test></code>s. Note that only tests with the same settings
+ of <var>filtertrace</var>, <var>haltonerror</var>, <var>haltonfailure</var>, <var>errorproperty</var>
+ and <var>failureproperty</var> can share a JVM, so even if you set <var>forkmode</var>
+ to <q>once</q>, Ant may have to create more than a single JVM. This attribute is ignored for
+ tests that don't get forked into a new JVM. <em>Since Ant 1.6.2</em></td>
+ <td>No; default is <q>perTest</q></td>
</tr>
<tr>
- <td valign="top">maxmemory</td>
- <td valign="top">Maximum amount of memory to allocate to the forked VM.
- Ignored if <code>fork</code> is disabled. <strong>Note</strong>:
- If you get <code>java.lang.OutOfMemoryError: Java heap space</code>
- in some of your tests then you need to raise the size like
- <code>maxmemory="128m"</code></td>
- <td align="center" valign="top">No</td>
+ <td>haltonerror</td>
+ <td>Stop the build process if an error occurs during the test run.</td>
+ <td>No; default is <q>off</q></td>
</tr>
<tr>
- <td valign="top">jvm</td>
- <td valign="top">The command used to invoke the Java Virtual Machine,
- default is 'java'. The command is resolved by
- <code>java.lang.Runtime.exec()</code>.
- Ignored if <code>fork</code> is disabled.</td>
- <td align="center" valign="top">No; default is <code>java</code>.</td>
+ <td>errorproperty</td>
+ <td>The name of a property to set in the event of an error.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">dir</td>
- <td valign="top">The directory in which to invoke the VM. Ignored if
- <code>fork</code> is disabled.</td>
- <td align="center" valign="top">No</td>
+ <td>haltonfailure</td>
+ <td>Stop the build process if a test fails (errors are considered failures as well).</td>
+ <td>No; default is <q>off</q></td>
</tr>
<tr>
- <td valign="top">newenvironment</td>
- <td valign="top">Do not propagate the old environment when new
- environment variables are specified. Ignored if <code>fork</code> is
- disabled.</td>
- <td align="center" valign="top">No; default is <code>false</code>.</td>
+ <td>failureproperty</td>
+ <td>The name of a property to set in the event of a failure (errors are considered failures as
+ well).</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">includeantruntime</td>
- <td valign="top">Implicitly add the Ant classes required to run
- the tests and JUnit to the classpath in forked mode.
- </td>
- <td align="center" valign="top">No; default is <code>true</code>.</td>
+ <td>filtertrace</td>
+ <td>Filter out JUnit and Ant stack frames from error and failure stack traces.</td>
+ <td>No; default is <q>on</q></td>
</tr>
<tr>
- <td valign="top">showoutput</td>
- <td valign="top">Send any output generated by tests to Ant's
- logging system as well as to the formatters. By default only the
- formatters receive the output.</td>
- <td align="center" valign="top">No</td>
+ <td>timeout</td>
+ <td>Cancel the individual tests if they don't finish in the given time (measured in
+ milliseconds). Ignored if <var>fork</var> is <q>off</q>. When running multiple tests inside
+ the same JVM (see <var>forkMode</var>), <var>timeout</var> applies to the time that all tests
+ use together, not to an individual test.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">outputtoformatters</td>
- <td valign="top">
- <em>Since Ant 1.7.0</em>.<br/>
- Send any output generated by tests to the test formatters.
- This is "true" by default.
- </td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">tempdir</td>
- <td valign="top">Where Ant should place temporary files.
- <em>Since Ant 1.6</em>.</td>
- <td align="center" valign="top">No; default is the project's base
- directory.</td>
- </tr>
- <tr>
- <td valign="top">reloading</td>
- <td valign="top">Whether or not a new classloader should be instantiated for each test case.<br>
- Ignore if <code>fork</code> is set to true.
- <em>Since Ant 1.6</em>.</td>
- <td align="center" valign="top">No; default is <code>true</code>.</td>
- </tr>
- <tr>
- <td valign="top">clonevm</td>
- <td valign="top">If set to true true, then all system properties
- and the bootclasspath of the forked Java Virtual Machine will be
- the same as those of the Java VM running Ant. Default is
- "false" (ignored if fork is disabled).
- <em>since Ant 1.7</em></td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">logfailedtests</td>
- <td valign="top">When Ant executes multiple tests and doesn't stop
- on errors or failures it will log a "FAILED" message for each
- failing test to its logging system. If you set this option to
- false, the message will not be logged and you have to rely on the
- formatter output to find the failing tests.
- <em>since Ant 1.8.0</em></td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">enableTestListenerEvents</td>
- <td valign="top">Whether Ant should send fine grained information
- about the running tests to Ant's logging system at the verbose
- level. Such events may be used by custom test listeners to show
- the progress of tests.<br/>
- Defaults to <code>false</code>.<br/>
- Can be overridden by a <a href="#enabletestlistenerevents">magic
- property</a>.<br/>
- <em>since Ant 1.8.2</em> - <strong>Ant 1.7.0 to 1.8.1 behave as
- if this attribute was true by default.</strong></td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">threads</td>
- <td valign="top">a number of threads to run the tests in.<br/>
- When this attribute is specified the tests will be split arbitrarily among the threads.<br/>
- requires that the tests be forked with the <code>perTest</code>
- option to be operative.<br/>
- <em>since Ant 1.9.4</em></td>
- <td align="center" valign="top">No</td>
+ <td>maxmemory</td>
+ <td>Maximum amount of memory to allocate to the forked JVM. Ignored if <var>fork</var>
+ is <q>off</q>. <strong>Note</strong>: If you get <code>java.lang.OutOfMemoryError: Java heap
+ space</code> in some of your tests then you need to raise the size
+ like <var>maxmemory</var>=<q>128m</q></td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>jvm</td>
+ <td>The command used to invoke JVM. The command is resolved
+ by <code>java.lang.Runtime.exec()</code>.</td>
+ <td>No; default is <q>java</q>, ignored if <var>fork</var> is <q>false</q></td>
+ </tr>
+ <tr>
+ <td>dir</td>
+ <td>The directory in which to invoke JVM.</td>
+ <td>No, ignored if <var>fork</var> is <q>false</q></td>
+ </tr>
+ <tr>
+ <td>newenvironment</td>
+ <td>Do not propagate the old environment when new environment variables are specified.</td>
+ <td>No; default is <q>false</q>, ignored if <var>fork</var> is <q>false</q></td>
+ </tr>
+ <tr>
+ <td>includeantruntime</td>
+ <td>Implicitly add the Ant classes required to run the tests and JUnit to the classpath in
+ forked mode.</td>
+ <td>No; default is <q>true</q></td>
+ </tr>
+ <tr>
+ <td>showoutput</td>
+ <td>Send any output generated by tests to Ant's logging system as well as to the
+ formatters.</td>
+ <td>No; by default only the formatters receive the output</td>
+ </tr>
+ <tr>
+ <td>outputtoformatters</td>
+ <td><em>Since Ant 1.7.0</em>.<br/>Send any output generated by tests to the test
+ formatters.</td>
+ <td>No; default is <q>true</q></td>
+ </tr>
+ <tr>
+ <td>tempdir</td>
+ <td>Where Ant should place temporary files. <em>Since Ant 1.6</em>.</td>
+ <td>No; default is the project's <var>basedir</var></td>
+ </tr>
+ <tr>
+ <td>reloading</td>
+ <td>Whether or not a new classloader should be instantiated for each test case.<br/>Ignore
+ if <var>fork</var> is set to <q>true</q>. <em>Since Ant 1.6</em>.</td>
+ <td>No; default is <code>true</code></td>
+ </tr>
+ <tr>
+ <td>clonevm</td>
+ <td>If set to <q>true</q>, then all system properties and the <var>bootclasspath</var> of the
+ forked JVM will be the same as those of the JVM running Ant. <em>since Ant 1.7</em></td>
+ <td>No; default is <q>false</q>, ignored if <var>fork</var> is <q>false</q></td>
+ </tr>
+ <tr>
+ <td>logfailedtests</td>
+ <td>When Ant executes multiple tests and doesn't stop on errors or failures it will log a
+ "FAILED" message for each failing test to its logging system. If you set this option
+ to <q>false</q>, the message will not be logged and you have to rely on the formatter output
+ to find the failing tests. <em>since Ant 1.8.0</em></td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>enableTestListenerEvents</td>
+ <td>Whether Ant should send fine grained information about the running tests to Ant's logging
+ system at the verbose level. Such events may be used by custom test listeners to show the
+ progress of tests.<br/><em>since Ant 1.8.2</em>—<strong>Ant 1.7.0 to 1.8.1 behave as if
+ this attribute was <q>true</q> by default.</strong></td>
+ <td>No; defaults to <q>false</q>, can be overridden by
+ a <a href="#enabletestlistenerevents">magic property</a></td>
+ </tr>
+ <tr>
+ <td>threads</td>
+ <td>a number of threads to run the tests in.<br/>When this attribute is specified the tests will
+ be split arbitrarily among the threads.<br/>Requires that the tests be forked with
+ the <q>perTest</q> option to be operative.<br/><em>since Ant 1.9.4</em></td>
+ <td>No</td>
</tr>
</table>
-<p>By using the <code>errorproperty</code> and <code>failureproperty</code>
-attributes, it is possible to
-perform setup work (such as starting an external server), execute the test,
-clean up, and still fail the build in the event of a failure.</p>
+<p>By using the <var>errorproperty</var> and <var>failureproperty</var> attributes, it is possible
+to perform setup work (such as starting an external server), execute the test, clean up, and still
+fail the build in the event of a failure.</p>
-<p>The <code>filtertrace</code> attribute condenses error and failure
-stack traces before reporting them.
-It works with both the plain and XML formatters. It filters out any lines
-that begin with the following string patterns:<pre>
+<p>The <var>filtertrace</var> attribute condenses error and failure stack traces before reporting
+them. It works with both the plain and XML formatters. It filters out any lines that begin with
+the following string patterns:</p>
+
+<pre>
"junit.framework.TestCase"
"junit.framework.TestResult"
"junit.framework.TestSuite"
@@ -284,18 +226,16 @@ that begin with the following string patterns:<pre>
<h3 id="nested">Nested Elements</h3>
-<p>The <code><junit></code> task
-supports a nested <code><classpath></code>
-element that represents a <a href="../using.html#path">PATH like
-structure</a>.</p>
+<p>The <code><junit></code> task supports a nested <code><classpath></code> element that
+represents a <a href="../using.html#path">PATH like structure</a>.</p>
-<p><em>Since Ant 1.7</em>, this classpath may be used to refer to <code>junit.jar</code>
-as well as your tests and the tested code.
+<p><em>Since Ant 1.7</em>, this classpath may be used to refer to <samp>junit.jar</samp> as well as
+your tests and the tested code.</p>
<h4>jvmarg</h4>
-<p>If <code>fork</code> is enabled, additional parameters may be passed to
-the new VM via nested <code><jvmarg></code> elements. For example:</p>
+<p>If <var>fork</var> is <q>true</q>, additional parameters may be passed to the new JVM via
+nested <code><jvmarg></code> elements. For example:</p>
<pre>
<junit fork="yes">
@@ -304,18 +244,17 @@ the new VM via nested <code><jvmarg></code> elements. For example:</p>
</junit>
</pre>
-<p>would run the test in a VM without JIT.</p>
+<p>would run the test in a JVM without JIT.</p>
-<p><code><jvmarg></code> allows all attributes described in <a
-href="../using.html#arg">Command-line Arguments</a>.</p>
+<p><code><jvmarg></code> allows all attributes described
+in <a href="../using.html#arg">Command-line Arguments</a>.</p>
<h4>sysproperty</h4>
-<p>Use nested <code><sysproperty></code> 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 ANT's VM or the forked VM,
-if <code>fork</code> is enabled).
-The attributes for this element are the same as for <a href="../Tasks/exec.html#env">environment variables</a>.</p>
+<p>Use nested <code><sysproperty></code> elements to specify system properties required by the
+class. These properties will be made available to JVM during the execution of the test (either Ant's
+JVM or the forked JVM, if <var>fork</var>=<q>true</q>). The attributes for this element are the
+same as for <a href="../Tasks/exec.html#env">environment variables</a>.</p>
<pre>
<junit fork="no">
@@ -324,8 +263,8 @@ The attributes for this element are the same as for <a href="../Tasks/exec.html#
</junit>
</pre>
-<p>would run the test in ANT's VM and make the <code>basedir</code> property
-available to the test.</p>
+<p>would run the test in Ant's JVM and make the <code>basedir</code> property available to the
+test.</p>
<h4>syspropertyset</h4>
@@ -336,36 +275,33 @@ with <a href="../Types/propertyset.html">syspropertyset</a>s.</p>
<h4>env</h4>
-<p>It is possible to specify environment variables to pass to the
-forked VM via nested <code><env></code> elements. For a description
-of the <code><env></code> element's attributes, see the
-description in the <a href="../Tasks/exec.html#env">exec</a> task.</p>
+<p>It is possible to specify environment variables to pass to the forked JVM via
+nested <code><env></code> elements. For a description of the <code><env></code>
+element's attributes, see the description in the <a href="../Tasks/exec.html#env">exec</a> task.</p>
-<p>Settings will be ignored if <code>fork</code> is disabled.</p>
+<p>Settings will be ignored if <var>fork</var>=<q>false</q>.</p>
<h4>bootclasspath</h4>
-<p>The location of bootstrap class files can be specified using this
-<a href="../using.html#path">PATH like structure</a> - will be ignored
-if <i>fork</i> is not <code>true</code> or the target VM doesn't
-support it (i.e. Java 1.1).</p>
+<p>The location of bootstrap class files can be specified using
+this <a href="../using.html#path">PATH like structure</a>—will be ignored if <var>fork</var>
+is <q>false</q> or the target JVM doesn't support it (i.e. Java 1.1).</p>
<p><em>since Ant 1.6</em>.</p>
<h4>permissions</h4>
-<p>Security permissions can be revoked and granted during the execution of the
-class via a nested <i>permissions</i> element. For more information please
+<p>Security permissions can be revoked and granted during the execution of the class via a
+nested <code>permissions</code> element. For more information please
see <a href="../Types/permissions.html">permissions</a></p>
-<p>Settings will be ignored if fork is enabled.</p>
+<p>Settings will be ignored if <var>fork</var>=<q>true</q>.</p>
<p><em>since Ant 1.6</em>.</p>
<h4>assertions</h4>
-<p>You can control enablement of Java 1.4 assertions with an
-<a href="../Types/assertions.html"><tt><assertions></tt></a>
-subelement.</p>
+<p>You can control enablement of Java 1.4 assertions with
+an <a href="../Types/assertions.html"><code><assertions></code></a> subelement.</p>
<p>Assertion statements are currently ignored in non-forked mode.</p>
@@ -373,83 +309,81 @@ subelement.</p>
<h4>modulepath</h4>
-<p>The location of modules can be specified using this <a href="../using.html#path">PATH like structure</a>.<br/>
-The modulepath requires <i>fork</i> to be set to <code>true</code>.
+<p>The location of modules can be specified using this <a href="../using.html#path">PATH like
+structure</a>.<br/>The <code>modulepath</code> requires <var>fork</var> to be set to <q>true</q>.
<p><em>since Ant 1.9.8</em></p>
<h4>upgrademodulepath</h4>
-<p>The location of modules that replace upgradeable modules in the runtime image
-can be specified using this <a href="../using.html#path">PATH like structure</a>.<br/>
-The upgrademodulepath requires <i>fork</i> to be set to <code>true</code>.
+<p>The location of modules that replace upgradeable modules in the runtime image can be specified
+using this <a href="../using.html#path">PATH like
+structure</a>.<br/>The <code>upgrademodulepath</code> requires <var>fork</var> to be set
+to <q>true</q>.</p>
<p><em>since Ant 1.9.8</em></p>
<h4>formatter</h4>
-<p>The results of the tests can be printed in different
-formats. Output will always be sent to a file, unless you set the
-<code>usefile</code> attribute to <code>false</code>.
-The name of the file is determined by the
-name of the test and can be set by the <code>outfile</code> attribute
+<p>The results of the tests can be printed in different formats. Output will always be sent to a
+file, unless you set the <var>usefile</var> attribute to <q>false</q>. The name of the file is
+determined by the name of the test and can be set by the <var>outfile</var> attribute
of <code><test></code>.</p>
-<p>There are four predefined formatters - one prints the test results
-in XML format, the other emits plain text. The formatter named
-<code>brief</code> will only print detailed information for testcases
-that failed, while <code>plain</code> gives a little statistics line
-for all test cases. Custom formatters that need to implement
-<code>org.apache.tools.ant.taskdefs.optional.junit.JUnitResultFormatter</code>
-can be specified.</p>
-
-<p>If you use the XML formatter, it may not include the same output
-that your tests have written as some characters are illegal in XML
-documents and will be dropped.</p>
-
-<p>The fourth formatter named <code>failure</code> (<em>since Ant 1.8.0</em>)
-collects all failing <code>testXXX()</code>
-methods and creates a new <code>TestCase</code> which delegates only these
-failing methods. The name and the location can be specified via Java System property or Ant property
-<code>ant.junit.failureCollector</code>. The value has to point to the directory and
-the name of the resulting class (without suffix). It defaults to <i>java-tmp-dir</i>/FailedTests.</p>
-
-<table>
+<p>There are four predefined formatters—one prints the test results in XML format, the other
+emits plain text. The formatter named <q>brief</q> will only print detailed information for test
+cases that failed, while <q>plain</q> gives a little statistics line for all test cases. Custom
+formatters that need to
+implement <code>org.apache.tools.ant.taskdefs.optional.junit.JUnitResultFormatter</code> can be
+specified.</p>
+
+<p>If you use the XML formatter, it may not include the same output that your tests have written as
+some characters are illegal in XML documents and will be dropped.</p>
+
+<p>The fourth formatter named <q>failure</q> (<em>since Ant 1.8.0</em>) collects all
+failing <code>testXXX()</code> methods and creates a new <code>TestCase</code> which delegates only
+these failing methods. The name and the location can be specified via Java System property or Ant
+property <code>ant.junit.failureCollector</code>. The value has to point to the directory and the
+name of the resulting class (without suffix). It defaults
+to <samp><i>java-tmp-dir</i>/FailedTests</samp>.</p>
+
+<table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">type</td>
- <td valign="top">Use a predefined formatter (either
- <code>xml</code>, <code>plain</code>, <code>brief</code> or <code>failure</code>).</td>
- <td align="center" rowspan="2">Exactly one of these</td>
+ <td>type</td>
+ <td>Use a predefined formatter (either <q>xml</q>, <q>plain</q>, <q>brief</q>
+ or <q>failure</q>).</td>
+ <td rowspan="2">Exactly one of these</td>
</tr>
<tr>
- <td valign="top">classname</td>
- <td valign="top">Name of a custom formatter class.</td>
+ <td>classname</td>
+ <td>Name of a custom formatter class.</td>
</tr>
<tr>
- <td valign="top">extension</td>
- <td valign="top">Extension to append to the output filename.</td>
- <td align="center">Yes, if <code>classname</code> has been used.</td>
+ <td>extension</td>
+ <td>Extension to append to the output filename.</td>
+ <td>Yes, if <var>classname</var> has been used</td>
</tr>
<tr>
- <td valign="top">usefile</td>
- <td valign="top">Boolean that determines whether output should be
- sent to a file.</td>
- <td align="center">No; default is <code>true</code>.</td>
+ <td>usefile</td>
+ <td>Boolean that determines whether output should be sent to a file.</td>
+ <td>No; default is <q>true</q></td>
</tr>
<tr>
- <td valign="top">if</td>
- <td valign="top">Only use formatter <a href="../properties.html#if+unless">if the named property is set</a>.</td>
- <td align="center">No; default is <code>true</code>.</td>
+ <td>if</td>
+ <td>Only use formatter <a href="../properties.html#if+unless">if the named property is
+ set</a>.</td>
+ <td>No; default is <q>true</q></td>
</tr>
<tr>
- <td valign="top">unless</td>
- <td valign="top">Only use formatter <a href="../properties.html#if+unless">if the named property is <b>not</b> set</a>.</td>
- <td align="center">No; default is <code>true</code>.</td>
+ <td>unless</td>
+ <td>Only use formatter <a href="../properties.html#if+unless">if the named property
+ is <strong>not</strong> set</a>.</td>
+ <td>No; default is <q>true</q></td>
</tr>
</table>
@@ -457,236 +391,219 @@ the name of the resulting class (without suffix). It defaults to <i>java-tmp-dir
<p>Defines a single test class.</p>
-<table>
-<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td valign="top"><b>Required</b></td>
-</tr>
+<table class="attr">
+ <tr>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
+ </tr>
<tr>
- <td valign="top">name</td>
- <td valign="top">Name of the test class.</td>
- <td align="center">Yes</td>
+ <td>name</td>
+ <td>Name of the test class.</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">methods</td>
- <td valign="top">Comma-separated list of names of test case methods to execute.
- <em>Since 1.8.2</em>
- <p>The <code>methods</code> attribute can be useful in the following scenarios:</p>
+ <td>methods</td>
+ <td>Comma-separated list of names of test case methods to execute. <em>Since 1.8.2</em>
+ <p>The <var>methods</var> attribute can be useful in the followiang scenarios:</p>
<ul>
- <li>A test method has failed and you want to re-run the test method
- to test a fix or re-run the test under the Java debugger without
- having to wait for the other (possibly long running) test methods
- to complete.</li>
- <li>One or more test methods are running slower than expected and you
- want to re-run them under a Java profiler (without the overhead
- of running the profiler whilst other test methods are being
- executed).</li>
+ <li>A test method has failed and you want to re-run the test method to test a fix or re-run
+ the test under the Java debugger without having to wait for the other (possibly long
+ running) test methods to complete.</li>
+ <li>One or more test methods are running slower than expected and you want to re-run them
+ under a Java profiler (without the overhead of running the profiler whilst other test
+ methods are being executed).</li>
</ul>
- <p>If the <code>methods</code> attribute is used but no test method
- is specified, then no test method from the suite will be executed.</p>
+ <p>If the <var>methods</var> attribute is used but no test method is specified, then no test
+ method from the suite will be executed.</p>
</td>
- <td align="center">No; default is to run all test methods in the suite.</td>
+ <td>No; default is to run all test methods in the suite</td>
</tr>
<tr>
- <td valign="top">fork</td>
- <td valign="top">Run the tests in a separate VM.
- Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
+ <td>fork</td>
+ <td>Run the tests in a separate JVM. Overrides value set in <code><junit></code>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">haltonerror</td>
- <td valign="top">Stop the build process if an error occurs during the test
- run. Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
+ <td>haltonerror</td>
+ <td>Stop the build process if an error occurs during the test run. Overrides value set
+ in <code><junit></code>.</td>
+ <td>No</td>
</tr>
-<tr>
- <td valign="top">errorproperty</td>
- <td valign="top">The name of a property to set in the event of an error.
- Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
-</tr>
<tr>
- <td valign="top">haltonfailure</td>
- <td valign="top">Stop the build process if a test fails (errors are
- considered failures as well). Overrides value set in
- <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
+ <td>errorproperty</td>
+ <td>The name of a property to set in the event of an error. Overrides value set
+ in <code><junit></code>.</td>
+ <td>No</td>
</tr>
-<tr>
- <td valign="top">failureproperty</td>
- <td valign="top">The name of a property to set in the event of a failure
- (errors are considered failures as well). Overrides value set in
- <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
-</tr>
<tr>
- <td valign="top">filtertrace</td>
- <td valign="top">Filter out Junit and Ant stack frames from error and failure stack
- traces. Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No; default is <code>on</code>.</td>
+ <td>haltonfailure</td>
+ <td>Stop the build process if a test fails (errors are considered failures as well). Overrides
+ value set in <code><junit></code>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">todir</td>
- <td valign="top">Directory to write the reports to.</td>
- <td align="center" valign="top">No; default is the current directory.</td>
+ <td>failureproperty</td>
+ <td>The name of a property to set in the event of a failure (errors are considered failures as
+ well). Overrides value set in <code><junit></code>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">outfile</td>
- <td valign="top">Base name of the test result. The full filename is
- determined by this attribute and the extension of
- <code>formatter</code>.</td>
- <td align="center" valign="top">No; default is
- <code>TEST-</code><em>name</em>, where <em>name</em> is the name of
- the test specified in the <code>name</code> attribute.</td>
+ <td>filtertrace</td>
+ <td>Filter out JUnit and Ant stack frames from error and failure stack traces. Overrides value
+ set in <code><junit></code>.</td>
+ <td>No; default is <q>on</q></td>
</tr>
<tr>
- <td valign="top">if</td>
- <td valign="top">Only run test <a href="../properties.html#if+unless">if the named property is set</a>.</td>
- <td align="center" valign="top">No</td>
+ <td>todir</td>
+ <td>Directory to write the reports to.</td>
+ <td>No; default is the current directory</td>
</tr>
<tr>
- <td valign="top">unless</td>
- <td valign="top">Only run test <a href="../properties.html#if+unless">if the named property is <b>not</b> set</a>.</td>
- <td align="center" valign="top">No</td>
+ <td>outfile</td>
+ <td>Base name of the test result. The full filename
+ is <var>outfile</var>.<var>formatter</var>.</td>
+ <td>No; default is <samp>TEST-</samp><var>name</var></td>
</tr>
<tr>
- <td valign="top">skipNonTests</td>
- <td valign="top">Do not pass any classes that do not contain JUnit tests to the test runner.
- This prevents non tests from appearing as test errors in test results.<br />
- Tests are identified by looking for the <code>@Test</code> annotation on any methods in concrete classes
- that don't extend <code>junit.framework.TestCase</code>, or for public/protected methods with
- names starting with 'test' in concrete classes that extend <code>junit.framework.TestCase</code>.
- Classes marked with the JUnit4 <code>org.junit.runner.RunWith</code> or
- <code>org.junit.runner.Suite.SuiteClasses</code> annotations are also passed to JUnit for execution,
- as is any class with a public/protected no-argument <code>suite</code> method.</td>
- <td align="center" valign="top">No. Default is false.</td>
+ <td>if</td>
+ <td>Only run test <a href="../properties.html#if+unless">if the named property is set</a>.</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>unless</td>
+ <td>Only run test <a href="../properties.html#if+unless">if the named property
+ is <strong>not</strong> set</a>.</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>skipNonTests</td>
+ <td>Do not pass any classes that do not contain JUnit tests to the test runner. This prevents
+ non tests from appearing as test errors in test results.<br/> Tests are identified by looking
+ for the <code>@Test</code> annotation on any methods in concrete classes that don't
+ extend <code>junit.framework.TestCase</code>, or for public/protected methods with names
+ starting with <q>test</q> in concrete classes that
+ extend <code>junit.framework.TestCase</code>. Classes marked with the JUnit
+ 4 <code>org.junit.runner.RunWith</code> or <code>org.junit.runner.Suite.SuiteClasses</code>
+ annotations are also passed to JUnit for execution, as is any class with a public/protected
+ no-argument <code>suite</code> method.</td>
+ <td>No; default is <q>false</q></td>
</tr>
</table>
-<p>Tests can define their own formatters via nested
-<code><formatter></code> elements.</p>
+<p>Tests can define their own formatters via nested <code><formatter></code> elements.</p>
<h4>batchtest</h4>
<p>Define a number of tests based on pattern matching.</p>
-<p><code>batchtest</code> collects the included <a href="../Types/resources.html">resources</a> from any number
-of nested <a
-href="../Types/resources.html#collection">Resource Collection</a>s. It then
-generates a test class name for each resource that ends in
-<code>.java</code> or <code>.class</code>.</p>
+<p><code>batchtest</code> collects the included <a href="../Types/resources.html">resources</a> from
+any number of nested <a href="../Types/resources.html#collection">Resource Collection</a>s. It then
+generates a test class name for each resource that ends in <samp>.java</samp>
+or <samp>.class</samp>.</p>
-<p>Any type of Resource Collection is supported as a nested element,
-prior to Ant 1.7 only <code><fileset></code> has been
-supported.</p>
+<p>Any type of Resource Collection is supported as a nested element, prior to Ant 1.7
+only <code><fileset></code> has been supported.</p>
-<table>
-<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td valign="top"><b>Required</b></td>
-</tr>
+<table class="attr">
<tr>
- <td valign="top">fork</td>
- <td valign="top">Run the tests in a separate VM.
- Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">haltonerror</td>
- <td valign="top">Stop the build process if an error occurs during the test
- run. Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
+ <td>fork</td>
+ <td>Run the tests in a separate JVM. Overrides value set in <code><junit></code>.</td>
+ <td>No</td>
</tr>
-<tr>
- <td valign="top">errorproperty</td>
- <td valign="top">The name of a property to set in the event of an error.
- Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
-</tr>
<tr>
- <td valign="top">haltonfailure</td>
- <td valign="top">Stop the build process if a test fails (errors are
- considered failures as well). Overrides value set in
- <code><junit></code>.</td>
- <td align="center" valign="top">No</td>
+ <td>haltonerror</td>
+ <td>Stop the build process if an error occurs during the test run. Overrides value set
+ in <code><junit></code>.</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>errorproperty</td>
+ <td>The name of a property to set in the event of an error. Overrides value set
+ in <code><junit></code>.</td>
+ <td>No</td>
</tr>
-<tr>
- <td valign="top">failureproperty</td>
- <td valign="top">The name of a property to set in the event of a failure
- (errors are considered failures as well). Overrides value set in
- <code><junit></code></td>
- <td align="center" valign="top">No</td>
-</tr>
<tr>
- <td valign="top">filtertrace</td>
- <td valign="top">Filter out Junit and Ant stack frames from error and failure stack
- traces. Overrides value set in <code><junit></code>.</td>
- <td align="center" valign="top">No; default is <code>on</code>.</td>
+ <td>haltonfailure</td>
+ <td>Stop the build process if a test fails (errors are considered failures as well). Overrides
+ value set in <code><junit></code>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">todir</td>
- <td valign="top">Directory to write the reports to.</td>
- <td align="center" valign="top">No; default is the current directory.</td>
+ <td>failureproperty</td>
+ <td>The name of a property to set in the event of a failure (errors are considered failures as
+ well). Overrides value set in <code><junit></code></td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">if</td>
- <td valign="top">Only run tests <a href="../properties.html#if+unless">if the named property is set</a>.</td>
- <td align="center" valign="top">No</td>
+ <td>filtertrace</td>
+ <td>Filter out JUnit and Ant stack frames from error and failure stack traces. Overrides value
+ set in <code><junit></code>.</td>
+ <td>No; default is <q>on</q></td>
</tr>
<tr>
- <td valign="top">unless</td>
- <td valign="top">Only run tests <a href="../properties.html#if+unless">if the named property is <strong>not</strong> set</a>.</td>
- <td align="center" valign="top">No</td>
+ <td>todir</td>
+ <td>Directory to write the reports to.</td>
+ <td>No; default is the current directory</td>
</tr>
<tr>
- <td valign="top">skipNonTests</td>
- <td valign="top">Do not pass any classes that do not contain JUnit tests to the test runner.
- This prevents non tests from appearing as test errors in test results.<br />
- Tests are identified by looking for the <code>@Test</code> annotation on any methods in concrete classes
- that don't extend <code>junit.framework.TestCase</code>, or for public/protected methods with
- names starting with 'test' in concrete classes that extend <code>junit.framework.TestCase</code>.
- Classes marked with the JUnit4 <code>org.junit.runner.RunWith</code> or
- <code>org.junit.runner.Suite.SuiteClasses</code> annotations are also passed to JUnit for execution,
- as is any class with a public/protected no-argument <code>suite</code> method.</td>
- <td align="center" valign="top">No. Default is false.</td>
+ <td>if</td>
+ <td>Only run tests <a href="../properties.html#if+unless">if the named property is set</a>.</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>unless</td>
+ <td>Only run tests <a href="../properties.html#if+unless">if the named property
+ is <strong>not</strong> set</a>.</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>skipNonTests</td>
+ <td>Do not pass any classes that do not contain JUnit tests to the test runner. This prevents
+ non tests from appearing as test errors in test results.<br/>Tests are identified by looking
+ for the <code>@Test</code> annotation on any methods in concrete classes that don't
+ extend <code>junit.framework.TestCase</code>, or for public/protected methods with names
+ starting with 'test' in concrete classes that extend <code>junit.framework.TestCase</code>.
+ Classes marked with the JUnit4 <code>org.junit.runner.RunWith</code>
+ or <code>org.junit.runner.Suite.SuiteClasses</code> annotations are also passed to JUnit for
+ execution, as is any class with a public/protected no-argument <code>suite</code> method.</td>
+ <td>No; default is <q>false</q></td>
</tr>
</table>
-<p>Batchtests can define their own formatters via nested
-<code><formatter></code> elements.</p>
+<p>Batch tests can define their own formatters via nested <code><formatter></code>
+elements.</p>
-<h3>Forked tests and <code>tearDown</code></h3>
+<h3>Forked tests and <code>tearDown()</code></h3>
-<p>If a forked test runs into a timeout, Ant will terminate the Java
- VM process it has created, which probably means the
- test's <code>tearDown</code> method will never be called. The same
- is true if the forked VM crashes for some other reason.</p>
+<p>If a forked test runs into a timeout, Ant will terminate the JVM process it has created, which
+probably means the test's <code>tearDown()</code> method will never be called. The same is true if
+the forked JVM crashes for some other reason.</p>
-<p><em>Since Ant 1.8.0</em>, a special formatter is distributed with
- Ant that tries to load the testcase that was in the forked VM and
- invoke that class' <code>tearDown</code> method. This formatter has
- the following limitations:</p>
+<p><em>Since Ant 1.8.0</em>, a special formatter is distributed with Ant that tries to load the
+testcase that was in the forked JVM and invoke that class' <code>tearDown()</code> method. This
+formatter has the following limitations:</p>
<ul>
- <li>It runs in the same Java VM as Ant itself, this is a different
- Java VM than the one that was executing the test and it may see a
- different classloader (and thus may be unable to load the test
+ <li>It runs in the same JVM as Ant itself, this is a different JVM than the one that was executing
+ the test and it may see a different classloader (and thus may be unable to load the test
class).</li>
- <li>It cannot determine which test was run when the timeout/crash
- occurred if the forked VM was running multiple test. I.e. the
- formatter cannot work with any <code>forkMode</code> other
- than <code>perTest</code> and it won't do anything if the test
- class contains a <code>suite()</code> method.</li>
+ <li>It cannot determine which test was run when the timeout/crash occurred if the forked JVM was
+ running multiple test. I.e. the formatter cannot work with any <var>forkMode</var> other
+ than <q>perTest</q> and it won't do anything if the test class contains a <code>suite()</code>
+ method.</li>
</ul>
-<p>If the formatter recognizes an incompatible <code>forkMode</code>
- or a <code>suite</code> method or fails to load the test class it
- will silently do nothing.</p>
+<p>If the formatter recognizes an incompatible <var>forkMode</var> or a <code>suite</code> method or
+fails to load the test class it will silently do nothing.</p>
-<p>The formatter doesn't have any effect on tests that were not
- forked or didn't cause timeouts or VM crashes.</p>
+<p>The formatter doesn't have any effect on tests that were not forked or didn't cause timeouts or
+JVM crashes.</p>
<p>To enable the formatter, add a <code>formatter</code> like</p>
@@ -699,73 +616,62 @@ supported.</p>
<h3 id="enabletestlistenerevents"><code>ant.junit.enabletestlistenerevents</code> magic property</h3>
-<p><em>Since Ant 1.8.2</em> the <code>enableTestListenerEvents</code>
- attribute of the task controls whether fine grained logging messages
- will be sent to the task's verbose log. In addition to this
- attribute Ant will consult the
- property <code>ant.junit.enabletestlistenerevents</code> and the
- value of the property overrides the setting of the attribute.</p>
+<p><em>Since Ant 1.8.2</em> the <var>enableTestListenerEvents</var> attribute of the task controls
+whether fine grained logging messages will be sent to the task's verbose log. In addition to this
+attribute Ant will consult the property <code>ant.junit.enabletestlistenerevents</code> and the
+value of the property overrides the setting of the attribute.</p>
-<p>This property exists so that containers running Ant that depend on
- the additional logging events can ensure they will be generated even
- if the build file disables them.</p>
+<p>This property exists so that containers running Ant that depend on the additional logging events
+can ensure they will be generated even if the build file disables them.</p>
<h3>Examples</h3>
<pre>
<junit>
- <test name="my.test.TestCase"/>
-</junit>
-</pre>
+ <test name="my.test.TestCase"/>
+</junit></pre>
-<p>Runs the test defined in <code>my.test.TestCase</code> in the same
-VM. No output will be generated unless the test fails.</p>
+<p>Runs the test defined in <code>my.test.TestCase</code> in the same VM. No output will be
+generated unless the test fails.</p>
<pre>
<junit printsummary="yes" fork="yes" haltonfailure="yes">
- <formatter type="plain"/>
- <test name="my.test.TestCase"/>
-</junit>
-</pre>
+ <formatter type="plain"/>
+ <test name="my.test.TestCase"/>
+</junit></pre>
-<p>Runs the test defined in <code>my.test.TestCase</code> in a
-separate VM. At the end of the test, a one-line summary will be
-printed. A detailed report of the test can be found in
-<code>TEST-my.test.TestCase.txt</code>. The build process will be
-stopped if the test fails.</p>
+<p>Runs the test defined in <code>my.test.TestCase</code> in a separate JVM. At the end of the
+test, a one-line summary will be printed. A detailed report of the test can be found
+in <samp>TEST-my.test.TestCase.txt</samp>. The build process will be stopped if the test fails.</p>
<pre>
<junit printsummary="yes" haltonfailure="yes">
- <classpath>
- <pathelement location="${build.tests}"/>
- <pathelement path="${java.class.path}"/>
- </classpath>
-
- <formatter type="plain"/>
-
- <test name="my.test.TestCase" haltonfailure="no" outfile="result">
- <formatter type="xml"/>
- </test>
-
- <batchtest fork="yes" todir="${reports.tests}">
- <fileset dir="${src.tests}">
- <include name="**/*Test*.java"/>
- <exclude name="**/AllTests.java"/>
- </fileset>
- </batchtest>
-</junit>
-</pre>
-
-<p>Runs <code>my.test.TestCase</code> in the same VM, ignoring the
-given CLASSPATH; only a warning is printed if this test fails. In
-addition to the plain text test results, for this test a XML result
-will be output to <code>result.xml</code>.
-Then, for each matching file in the directory defined for
-<code>${src.tests}</code> a
-test is run in a separate VM. If a test fails, the build process is
-aborted. Results are collected in files named
-<code>TEST-</code><em>name</em><code>.txt</code> and written to
-<code>${reports.tests}</code>.</p>
+ <classpath>
+ <pathelement location="${build.tests}"/>
+ <pathelement path="${java.class.path}"/>
+ </classpath>
+
+ <formatter type="plain"/>
+
+ <test name="my.test.TestCase" haltonfailure="no" outfile="result">
+ <formatter type="xml"/>
+ </test>
+
+ <batchtest fork="yes" todir="${reports.tests}">
+ <fileset dir="${src.tests}">
+ <include name="**/*Test*.java"/>
+ <exclude name="**/AllTests.java"/>
+ </fileset>
+ </batchtest>
+</junit></pre>
+
+<p>Runs <code>my.test.TestCase</code> in the same JVM, ignoring the given <code>CLASSPATH</code>;
+only a warning is printed if this test fails. In addition to the plain text test results, for this
+test a XML result will be output to <samp>result.xml</samp>. Then, for each matching file in the
+directory defined for <samp>${src.tests}</samp> a test is run in a separate JVM. If a test fails,
+the build process is aborted. Results are collected in files
+named <samp>TEST-</samp><var>name</var><samp>.txt</samp> and written
+to <samp>${reports.tests}</samp>.</p>
<pre>
<target name="test">
@@ -797,60 +703,60 @@ aborted. Results are collected in files named
<formatter type="plain" usefile="false"/>
</test>
</junit>
-</target>
-</pre>
+</target></pre>
<p>On the first run all tests are collected via the <code><batchtest/></code>
-element. Its <code>plain</code> formatter shows the output on the console. The
-<code>failure</code> formatter creates a java source file in
-<code>${build.dir}/failingTests/FailedTests.java</code> which extends
-<code>junit.framework.TestCase</code> and returns from a <code>suite()</code>
-method a test suite for the failing tests. <br/>
-On a second run the collector class exists and instead of the <code><batchtest/></code>
-the single <code><test/></code> will run. So only the failing test cases are re-run.
-The two nested formatters are for displaying (for the user) and for updating the collector
-class.
-</p>
+element. Its <var>plain</var> formatter shows the output on the console. The <var>failure</var>
+formatter creates a Java source file in <samp>${build.dir}/failingTests/FailedTests.java</samp>
+which extends <code>junit.framework.TestCase</code> and returns from a <code>suite()</code> method a
+test suite for the failing tests.<br/> On a second run the collector class exists and instead of
+the <code><batchtest/></code> the single <code><test/></code> will run. So only the
+failing test cases are re-run. The two nested formatters are for displaying (for the user) and for
+updating the collector class.</p>
<pre>
- <junit fork="true"
- jvm="${platform.java}">
- <jvmarg line="--patch-module ${module.name}=${build.test.classes}"/>
- <jvmarg line="--add-modules ${module.name}"/>
- <jvmarg line="--add-reads ${module.name}=ALL-UNNAMED"/>
- <jvmarg line="--add-exports ${module.name}/my.test=ALL-UNNAMED"/>
- <classpath>
- <pathelement path="${libs.junit}"/>
- </classpath>
- <modulepath>
- <pathelement path="${modules}:${build.classes}"/>
- </modulepath>
- <formatter type="plain"/>
- <test name="my.test.TestCase"/>
- </junit>
+<junit fork="true"
+ jvm="${platform.java}">
+ <jvmarg line="--patch-module ${module.name}=${build.test.classes}"/>
+ <jvmarg line="--add-modules ${module.name}"/>
+ <jvmarg line="--add-reads ${module.name}=ALL-UNNAMED"/>
+ <jvmarg line="--add-exports ${module.name}/my.test=ALL-UNNAMED"/>
+ <classpath>
+ <pathelement path="${libs.junit}"/>
+ </classpath>
+ <modulepath>
+ <pathelement path="${modules}:${build.classes}"/>
+ </modulepath>
+ <formatter type="plain"/>
+ <test name="my.test.TestCase"/>
+</junit>
</pre>
-<p>Runs my.test.TestCase as a white-box test in the forked VM given by the <code>platform.java</code> property.
-The junit library is a part of an unnamed module while the tested project and required modules are on the module path. The tests
-do not have module-info file and are executed in the project module given by <code>module.name</code> property.<br/>
-The <code>--patch-module</code> java option executes the tests built into <code>${build.test.classes}</code> in a module given
-by <code>module.name</code> property.<br/>
-The <code>--add-modules</code> java option enables the tested module.<br/>
-The <code>--add-reads</code> java option makes the unnamed module containing the junit readable by tested module.<br/>
-The <code>--add-exports</code> java option makes the non-exported test package <code>my.test</code> accessible from the unnamed module containing the junit.<br/>
+<p>Runs <code>my.test.TestCase</code> as a white-box test in the forked JVM given by
+the <code>platform.java</code> property. The JUnit library is a part of an unnamed module while the
+tested project and required modules are on the module path. The tests do not have module-info file
+and are executed in the project module given by <code>module.name</code> property.<br/>
+The <code>--patch-module</code> Java option executes the tests built
+into <samp>${build.test.classes}</samp> in a module given by <code>module.name</code> property.<br/>
+The <code>--add-modules</code> Java option enables the tested module.<br/>
+The <code>--add-reads</code> Java option makes the unnamed module containing JUnit readable by
+tested module.<br/> The <code>--add-exports</code> Java option makes the non-exported test
+package <code>my.test</code> accessible from the unnamed module containing JUnit.</p>
<pre>
- <junit fork="true"
- jvm="${platform.java}">
- <jvmarg line="--add-modules ${test.module.name}"/>
- <jvmarg line="--add-exports ${test.module.name}/my.test=junit,ALL-UNNAMED"/>
- <modulepath>
- <pathelement path="${modules}:${build.classes}:${libs.junit}"/>
- </modulepath>
- <formatter type="plain"/>
- <test name="my.test.TestCase"/>
- </junit>
+<junit fork="true"
+ jvm="${platform.java}">
+ <jvmarg line="--add-modules ${test.module.name}"/>
+ <jvmarg line="--add-exports ${test.module.name}/my.test=junit,ALL-UNNAMED"/>
+ <modulepath>
+ <pathelement path="${modules}:${build.classes}:${libs.junit}"/>
+ </modulepath>
+ <formatter type="plain"/>
+ <test name="my.test.TestCase"/>
+</junit>
</pre>
-<p>Runs my.test.TestCase as a black-box test in the forked VM given by the <code>platform.java</code> property.
-The junit library is used as an automatic module. The tests module-info requires the tested module and junit.<br/>
-The <code>--add-modules</code> java option enables the test module.<br/>
-The <code>--add-exports</code> java option makes the non-exported test package <code>my.test</code> accessible from the junit module and Ant's test runner.
-Another possibility is to export the test package in the tests module-info by <code>exports my.test</code> directive.<br/>
+<p>Runs <code>my.test.TestCase</code> as a black-box test in the forked JVM given by
+the <code>platform.java</code> property. The JUnit library is used as an automatic module. The
+tests' module-info requires the tested module and JUnit.<br/> The <code>--add-modules</code> Java
+option enables the test module.<br/> The <code>--add-exports</code> Java option makes the
+non-exported test package <code>my.test</code> accessible from the JUnit module and Ant's test
+runner. Another possibility is to export the test package in the tests' module-info
+by <code>exports my.test</code> directive.</p>
</body>
</html>
http://git-wip-us.apache.org/repos/asf/ant/blob/66b52f99/manual/Tasks/junitreport.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/junitreport.html b/manual/Tasks/junitreport.html
index 79fd659..bc0afb9 100644
--- a/manual/Tasks/junitreport.html
+++ b/manual/Tasks/junitreport.html
@@ -24,172 +24,167 @@
<h2 id="junitreport">JUnitReport</h2>
<h3>Description</h3>
-Merge the individual XML files generated by the JUnit task and eventually apply
-a stylesheet on the resulting merged document to provide a browsable report of
-the testcases results.
+<p>Merge the individual XML files generated by the <code>JUnit</code> task and eventually apply a
+stylesheet on the resulting merged document to provide a browsable report of the testcases
+results.</p>
-<p><strong>Note</strong>: This task depends on external libraries not
-included in the Apache Ant distribution. See <a href="../install.html#librarydependencies">Library Dependencies</a>
-for more information.</p>
+<p><strong>Note</strong>: This task depends on external libraries not included in the Apache Ant
+distribution. See <a href="../install.html#librarydependencies">Library Dependencies</a> for more
+information.</p>
<h3>Requirements</h3>
-<p>The task needs Apache <a
-href="http://xml.apache.org/xalan-j/">Xalan 2.4.1+ or Xalan XSLTC</a>
-(JDK 1.4 contains a version of Xalan 2.x, while JDK 1.5 ships with a
-version of XSLTC). JDK 1.4.2-01 and later ships with a bundled
-Xalan 2.4.1+, meaning that JDKs prior to version 1.4.2-01 won't work
-out of the box. The table below summarize the compatibility status.
-</p>
+<p>The task needs Apache <a href="https://xml.apache.org/xalan-j/">Xalan 2.4.1+ or Xalan XSLTC</a>
+(JDK 1.4 contains a version of Xalan 2.x, while JDK 1.5 ships with a version of XSLTC). JDK 1.4.2-01
+and later ships with a bundled Xalan 2.4.1+, meaning that JDKs prior to version 1.4.2-01 won't work
+out of the box. The table below summarize the compatibility status.</p>
<table>
<tr><th>Xalan</th><th>Sun JDK Bundle</th><th>Status<th></tr>
<tr><td>2.4.1+</td><td>JDK 1.4.2-01+</td><td>OK</td></tr>
<tr><td>XSLTC</td><td>JDK 1.5.x</td><td>OK</td></tr>
-<tr><td>2.x</td><td>JDK 1.4.x</td><td>DEPRECATED<br><i>Use ${ant.home}/etc/junit-frames-xalan1.xsl
-<br>Upgrade Xalan using the JDK endorsement mechanism</i></td></tr>
+<tr><td>2.x</td><td>JDK 1.4.x</td><td><em><u>Deprecated</u>, use <samp>${ant.home}/etc/junit-frames-xalan1.xsl</samp>
+<br/>Upgrade Xalan using the JDK endorsement mechanism</em></td></tr>
</table>
-<p>In Ant 1.6.2, we had to decide between supporting Xalan 1/Xalan 2.4.1-
-and Xalan 2.4.1+/XSLTC, because there was no way to support both couples at the same
-time.</p>
-<p><em>Since Ant 1.7</em>, we dropped support for Xalan 1, because Xalan 1 was not
-available anymore for quite some time.</p>
+<p>In Ant 1.6.2, we had to decide between supporting Xalan 1/Xalan 2.4.1- and Xalan 2.4.1+/XSLTC,
+because there was no way to support both couples at the same time.</p>
+<p><em>Since Ant 1.7</em>, we dropped support for Xalan 1, because Xalan 1 was not available anymore
+for quite some time.</p>
<h3>Parameters</h3>
-<table>
+<table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">tofile</td>
- <td valign="top">The name of the XML file that will aggregate all individual
- XML testsuite previously generated by the JUnit task.</td>
- <td align="center" valign="top">No. Default to TESTS-TestSuites.xml</td>
+ <td>tofile</td>
+ <td>The name of the XML file that will aggregate all individual XML testsuites previously
+ generated by the <code>JUnit</code> task.</td>
+ <td>No; defaults to <samp>TESTS-TestSuites.xml</samp></td>
</tr>
<tr>
- <td valign="top">todir</td>
- <td valign="top">The directory where should be written the file resulting
- from the individual XML testsuite aggregation.</td>
- <td align="center" valign="top">No. Default to current directory</td>
+ <td>todir</td>
+ <td>The directory where the file resulting from the individual XML testsuite aggregation should
+ be written.</td>
+ <td>No; defaults to current directory</td>
</tr>
</table>
<h3 id="nested">Nested Elements</h3>
<h4>fileset</h4>
-<p><code>junitreport</code> collects individual xml files generated by the JUnit
-task using the nested <a href="../Types/fileset.html"><code><FileSet></code></a>
-element.</p>
+<p><code>junitreport</code> collects individual xml files generated by the <code>JUnit</code> task
+using the nested <a href="../Types/fileset.html"><code><FileSet></code></a> element.</p>
<h4>report</h4>
<p>Generate a browsable report based on the document created by the merge.</p>
<h3>Parameters</h3>
-<table>
+<table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">format</td>
- <td valign="top">The format of the generated report. Must be "noframes"
- or "frames".</td>
- <td align="center" valign="top">No, default to "frames"</td>
+ <td>format</td>
+ <td>The format of the generated report. Must be either <q>noframes</q> or <q>frames</q>.</td>
+ <td>No; defaults to <q>frames</q></td>
</tr>
<tr>
- <td valign="top">styledir</td>
- <td valign="top">The directory where the stylesheets are defined. They must
- be conforming to the following conventions:
+ <td>styledir</td>
+ <td>The directory where the stylesheets are defined. They must be conforming to the following
+ conventions:
<ul>
- <li>frames format: the stylesheet must be named <i>junit-frames.xsl</i>, or <i>junit-frames-saxon.xsl if you are using Saxon 9+.</li>
- <li>noframes format: the stylesheet must be named <i>junit-noframes.xsl</i>, or <i>junit-noframes-saxon.xsl if you are using Saxon 9+.</li>
+ <li><q>frames</q> format: the stylesheet must be named <samp>junit-frames.xsl</samp>, or <i>junit-frames-saxon.xsl if you are using Saxon 9+.</li>
+ <li><q>noframes</q> format: the stylesheet must be named <samp>junit-noframes.xsl</samp>, or <i>junit-noframes-saxon.xsl if you are using Saxon 9+.</li>
</ul>
</td>
- <td align="center" valign="top">No. Default to embedded stylesheets.</td>
+ <td>No; defaults to embedded stylesheets</td>
</tr>
<tr>
- <td valign="top">todir</td>
- <td valign="top">The directory where the files resulting from the
- transformation should be written to.</td>
- <td align="center" valign="top">No. Default to current directory</td>
+ <td>todir</td>
+ <td>The directory where the files resulting from the transformation should be written to.</td>
+ <td>No; defaults to current directory</td>
</tr>
</table>
-<p>Ant assumes the following concerning the <tt>frames</tt> and <tt>noframes</tt> formats:</p>
-<p>The <tt>frames</tt> format uses
-a stylesheet which is generating output <em>only</em> by redirecting.</p>
-<p>The
-<tt>noframes</tt> format does not use redirecting and generates one
-file called <tt>junit-noframes.html</tt>.</p>
-<p>Custom versions of <tt>junit-frames.xsl</tt> or <tt>junit-noframes.xsl</tt> must adhere to the above conventions.</p>
+<p>Ant assumes the following concerning the <q>frames</q> and <q>noframes</q> formats:</p>
+<ul>
+ <li>The <q>frames</q> format uses a stylesheet which is generating output <em>only</em> by
+ redirecting.</li>
+ <li>The <q>noframes</q> format does not use redirecting and generates one file
+ called <samp>junit-noframes.html</samp>.</li>
+</ul>
+<p>Custom versions of <samp>junit-frames.xsl</samp> or <samp>junit-noframes.xsl</samp> must adhere
+to the above conventions.</p>
<h3>Nested Element of the report tag</h3>
<h4>param</h4>
-<em>Since Ant 1.7</em>the report tag supports nested param tags.
-These tags can pass XSL parameters to the stylesheet.
+<p><em>Since Ant 1.7</em>, the <var>report</var> tag supports nested <code>param</code> tags. These
+tags can pass XSL parameters to the stylesheet.</p>
<h3>Parameters</h3>
-<table>
+<table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">name</td>
- <td valign="top">Name of the XSL parameter</td>
- <td align="center" valign="top">Yes</td>
+ <td>name</td>
+ <td>Name of the XSL parameter</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">expression</td>
- <td valign="top">Text value to be placed into the param.<br>
- Was originally intended to be an XSL expression.</td>
- <td align="center" valign="top">Yes</td>
+ <td>expression</td>
+ <td>Text value to be placed into the <code>param</code>.<br/>Was originally intended to be an
+ XSL expression.</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">if</td>
- <td valign="top">The param will only be passed <a href="../properties.html#if+unless">if this property is set</a>.</td>
- <td align="center" valign="top">No</td>
+ <td>if</td>
+ <td>The <code>param</code> will only be passed <a href="../properties.html#if+unless">if this
+ property is set</a>.</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">unless</td>
- <td valign="top">The param will not be passed <a href="../properties.html#if+unless">if this property is set</a>.</td>
- <td align="center" valign="top">No</td>
+ <td>unless</td>
+ <td>The <code>param</code> will not be passed <a href="../properties.html#if+unless">if this
+ property is set</a>.</td>
+ <td>No</td>
</tr>
</table>
<p>The built-in stylesheets support the following parameters:</p>
<table>
<tr>
- <td valign="top"><b>XSL-Parameter</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>XSL Parameter</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">TITLE</td>
- <td valign="top">Title used in <title> and <h1> tags</td>
- <td align="center" valign="top">No. Defaults to <i>Unit Test Results.</i></td>
+ <td>TITLE</td>
+ <td>Title used in <code><title></code> and <code><h1></code> tags</td>
+ <td>No; defaults to <q>Unit Test Results</q></td>
</tr>
</table>
<h4>classpath</h4>
-<p><em>Since Ant 1.9.5</em>.
-Like for the <a href="../Tasks/style.html#classpath">XSLT task</a>,
-a nested <classpath> will be used to load the processor.</p>
+<p><em>Since Ant 1.9.5</em>. Like for the <a href="../Tasks/style.html#classpath">XSLT task</a>, a
+nested <code><classpath></code> will be used to load the processor.</p>
<h4>factory</h4>
-<p><em>Since Ant 1.9.5</em>.
-Like for the <a href="../Tasks/style.html#factory">XSLT task</a>,
-a nested <factory> can be used to specify factory settings.</p>
-
+<p><em>Since Ant 1.9.5</em>. Like for the <a href="../Tasks/style.html#factory">XSLT task</a>, a
+nested <code><factory></code> can be used to specify factory settings.</p>
<h3>Example of report</h3>
-<pre><junitreport todir="./reports">
- <fileset dir="./reports">
- <include name="TEST-*.xml"/>
- </fileset>
- <report format="frames" todir="./report/html"/>
+<pre>
+<junitreport todir="./reports">
+ <fileset dir="./reports">
+ <include name="TEST-*.xml"/>
+ </fileset>
+ <report format="frames" todir="./report/html"/>
</junitreport></pre>
-<p>would generate a <tt>TESTS-TestSuites.xml</tt> file in the directory <tt>reports</tt> and
-generate the default framed report in the directory <tt>report/html</tt>.</p>
+<p>would generate a <samp>TESTS-TestSuites.xml</samp> file in the directory <samp>reports</samp> and
+generate the default framed report in the directory <samp>report/html</samp>.</p>
<h3>Example of report with xsl params</h3>
<pre>
@@ -205,8 +200,8 @@ generate the default framed report in the directory <tt>report/html</tt>.</p>
</report>
</junitreport></pre>
-<p>This example requires a file called <tt>junitreport/junit-frames.xsl</tt>.
- The XSL parameters key1 and key2 will be passed to the XSL transformation.</p>
+<p>This example requires a file called <samp>junitreport/junit-frames.xsl</samp>. The XSL
+parameters <q>key1</q> and <q>key2</q> will be passed to the XSL transformation.</p>
</body>
</html>
http://git-wip-us.apache.org/repos/asf/ant/blob/66b52f99/manual/Tasks/length.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/length.html b/manual/Tasks/length.html
index bf577ad..57a3a12 100644
--- a/manual/Tasks/length.html
+++ b/manual/Tasks/length.html
@@ -26,100 +26,100 @@
<h2>Length</h2>
<h3>Description</h3>
-<p>Display or set a property containing length information for
- a string, a file, or one or more nested
- <a href="../Types/resources.html#collection">Resource Collection</a>s.
- Can also be used as a condition. <em>Since Apache Ant 1.6.3</em></p>
+<p>Display or set a property containing length information for a string, a file, or one or more
+nested <a href="../Types/resources.html#collection">Resource Collection</a>s. Can also be used as
+a <code>condition</code>. <em>Since Apache Ant 1.6.3</em></p>
<h3>Parameters</h3>
-<table>
+<table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th rowspan="2">Attribute</th>
+ <th rowspan="2">Description</th>
+ <th colspan="2">Required</th>
</tr>
<tr>
- <td valign="top">property</td>
- <td valign="top">The property to set. If omitted
- the results are written to the log. Ignored when
- processing as a condition.</td>
- <td valign="top" align="center">No</td>
+ <th>Task</th>
+ <th>Condition</th>
</tr>
<tr>
- <td valign="top">file</td>
- <td valign="top">Single file whose length to report.</td>
- <td valign="top" align="center" rowspan="3">One of these,
- or one or more nested filesets</td>
+ <td>property</td>
+ <td>The property to set.</td>
+ <td class="center">No; by default, output value to the log</td>
+ <td>Ignored</td>
</tr>
<tr>
- <td valign="top">resource</td>
- <td valign="top">Single resource whose length to report (using extended
- <a href="../properties.html#propertyHelper">properties handling</a>).
- <em>Since Ant 1.8.1</em>
- </td>
+ <td>mode</td>
+ <td>File length mode; when <q>all</q> the resulting value is the sum of all included resources'
+ lengths; when <q>each</q> the task outputs the absolute path and length of each included
+ resource, one per line.</td>
+ <td class="center">No; default is <q>all</q></td>
+ <td>Ignored</td>
+ </tr>
+ <tr>
+ <td>file</td>
+ <td>Single file whose length to report.</td>
+ <td rowspan="3" colspan="2">One of these, or one or more nested filesets</td>
</tr>
<tr>
- <td valign="top">string</td>
- <td valign="top">The string whose length to report.</td>
+ <td>resource</td>
+ <td class="left">Single resource whose length to report (using
+ extended <a href="../properties.html#propertyHelper">properties handling</a>). <em>Since Ant
+ 1.8.1</em>
+ </td>
</tr>
<tr>
- <td valign="top">mode</td>
- <td valign="top">File length mode; when "all" the resulting
- value is the sum of all included resources' lengths; when "each"
- the task outputs the absolute path and length of each included resource,
- one per line. Ignored when processing as a condition.</td>
- <td valign="top" align="center">No; default is "all"</td>
+ <td>string</td>
+ <td class="left">The string whose length to report.</td>
</tr>
<tr>
- <td valign="top">trim</td>
- <td valign="top">Whether to trim when operating on a string. Default <i>false</i>.</td>
- <td valign="top" align="center">No; only valid when string is set</td>
+ <td>trim</td>
+ <td>Whether to trim when operating on a string.</td>
+ <td colspan="2">No; default is <q>false</q>, ignored unless <var>string</var> is set</td>
</tr>
<tr>
- <td valign="top">length</td>
- <td valign="top">Comparison length for processing as a condition.</td>
- <td valign="top" align="center">Yes, in condition mode</td>
+ <td>length</td>
+ <td>Comparison length.</td>
+ <td class="center">Ignored</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">when</td>
- <td valign="top">Comparison type: "equal", "eq", "greater", "gt", "less",
- "lt", "ge" (greater or equal), "ne" (not equal), "le" (less or equal)
- for use when operating as a condition.</td>
- <td valign="top" align="center">No; default is "equal"</td>
+ <td>when</td>
+ <td>Comparison
+ type: <q>equal</q>, <q>eq</q>, <q>greater</q>, <q>gt</q>, <q>less</q>, <q>lt</q>, <q>ge</q>
+ (greater or equal), <q>ne</q> (not equal), <q>le</q> (less or equal).</td>
+ <td class="center">Ignored</td>
+ <td>No; default is <q>equal</q></td>
</tr>
</table>
<h3>Parameters specified as nested elements</h3>
<h4>Resource Collections</h4>
-<p>You can include resources via nested
- <a href="../Types/resources.html#collection">Resource Collection</a>s.</p>
+<p>You can include resources via nested <a href="../Types/resources.html#collection">Resource
+Collection</a>s.</p>
<h3>Examples</h3>
-<pre><length string="foo" property="length.foo" />
-</pre>
-<p>Stores the length of the string "foo" in the property named
-<i>length.foo</i>.</p>
+<pre><length string="foo" property="length.foo"/></pre>
+<p>Stores the length of the string <q>foo</q> in the property named <code>length.foo</code>.</p>
-<pre><length file="bar" property="length.bar" />
-</pre>
-<p>Stores the length of file "bar" in the property named
-<i>length.bar</i>.</p>
+<pre><length file="bar" property="length.bar"/></pre>
+<p>Stores the length of file <samp>bar</samp> in the property named <code>length.bar</code>.</p>
<pre>
<length property="length" mode="each">
<fileset dir="." includes="foo,bar"/>
</length>
</pre>
-<p>Writes the file paths of <i>foo</i> and <i>bar</i> and their length into
-the property <i>length</i>.</p>
+<p>Writes the file paths of <samp>foo</samp> and <samp>bar</samp> and their length into the
+property <code>length</code>.</p>
<pre>
<length property="length" mode="all">
<fileset dir="." includes="foo,bar"/>
</length>
</pre>
-<p>Adds the length of <i>foo</i> and <i>bar</i> and stores the result in property <i>length</i>.</p>
+<p>Adds the length of <samp>foo</samp> and <samp>bar</samp> and stores the result in
+property <code>length</code>.</p>
</body>
</html>
http://git-wip-us.apache.org/repos/asf/ant/blob/66b52f99/manual/Tasks/loadfile.html
----------------------------------------------------------------------
diff --git a/manual/Tasks/loadfile.html b/manual/Tasks/loadfile.html
index b62abdd..87d2c2c 100644
--- a/manual/Tasks/loadfile.html
+++ b/manual/Tasks/loadfile.html
@@ -22,107 +22,96 @@
<body>
-
<h2 id="loadfile">LoadFile</h2>
<h3>Description</h3>
-<p>
-Specialization of <a href="loadresource.html">loadresource</a> that
-works on files exclusively and provides a srcFile attribute for
-convenience. Unless an encoding is specified, the encoding of the
-current locale is used.
-</p>
-<p>If the resource content is empty (maybe after processing a filterchain)
-the property is not set.</p>
-
+<p>Specialization of <a href="loadresource.html">loadresource</a> that works on files exclusively
+and provides a <var>srcFile</var> attribute for convenience. Unless an <var>encoding</var> is
+specified, the encoding of the current locale is used.</p>
+<p>If the resource content is empty (maybe after processing a <code>filterchain</code>) the property
+is not set.</p>
<h3>Parameters</h3>
-<table>
+<table class="attr">
<tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
+ <th>Attribute</th>
+ <th>Description</th>
+ <th>Required</th>
</tr>
<tr>
- <td valign="top">srcFile</td>
- <td valign="top">source file</td>
- <td valign="top" align="center">Yes</td>
+ <td>srcFile</td>
+ <td>source file</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">property</td>
- <td valign="top">property to save to</td>
- <td valign="top" align="center">Yes</td>
+ <td>property</td>
+ <td>property to save to</td>
+ <td>Yes</td>
</tr>
<tr>
- <td valign="top">encoding</td>
- <td valign="top">encoding to use when loading the file</td>
- <td align="center" valign="top">No</td>
+ <td>encoding</td>
+ <td>encoding to use when loading the file</td>
+ <td>No</td>
</tr>
<tr>
- <td valign="top">failonerror</td>
- <td valign="top">Whether to halt the build on failure</td>
- <td align="center" valign="top">No, default "true"</td>
+ <td>failonerror</td>
+ <td>Whether to halt the build on failure</td>
+ <td>No; default <q>true</q></td>
</tr>
<tr>
- <td valign="top">quiet</td>
- <td valign="top">Do not display a diagnostic message (unless Apache Ant has been
- invoked with the <code>-verbose</code> or <code>-debug</code>
- switches) or modify the exit status to reflect an error. Setting this to
- "true" implies setting failonerror to "false".
- <em>Since Ant 1.7.0</em>.
+ <td>quiet</td>
+ <td>Do not display a diagnostic message (unless Apache Ant has been invoked with
+ the <code>-verbose</code> or <code>-debug</code> switches) or modify the exit status to
+ reflect an error. Setting this to <q>true</q> implies setting <var>failonerror</var>
+ to <q>false</q>. <em>Since Ant 1.7.0</em>.
</td>
- <td align="center" valign="top">No, default "false"</td>
+ <td>No; default <q>false</q></td>
</tr>
</table>
-<p>
-The LoadFile task supports nested <a href="../Types/filterchain.html">
-FilterChain</a>s.
+<p>The LoadFile task supports nested <a href="../Types/filterchain.html"> FilterChain</a>s.</p>
<h3>Examples</h3>
-<pre> <loadfile property="message"
- srcFile="message.txt"/>
-</pre>
-Load file message.txt into property "message"; an <tt><echo></tt>
-can print this. This is identical to
-<pre> <loadresource property="message">
- <file file="message.txt"/>
- </loadresource>
-</pre>
+<pre>
+<loadfile property="message"
+ srcFile="message.txt"/></pre>
+<p>Load file message.txt into property <code>message</code>; an <code><echo></code> can print
+this. This is identical to</p>
+<pre>
+<loadresource property="message">
+ <file file="message.txt"/>
+</loadresource></pre>
-<pre> <loadfile property="encoded-file"
- srcFile="loadfile.xml"
- encoding="ISO-8859-1"/>
-</pre>
-Load a file using the latin-1 encoding
+<pre>
+<loadfile property="encoded-file"
+ srcFile="loadfile.xml"
+ encoding="ISO-8859-1"/></pre>
+<p>Load a file using the Latin-1 encoding</p>
-<pre> <loadfile
- property="optional.value"
- srcFile="optional.txt"
- failonerror="false"/>
-</pre>
-Load a file, don't fail if it is missing (a message is printed, though)
+<pre>
+<loadfile property="optional.value"
+ srcFile="optional.txt"
+ failonerror="false"/></pre>
+<p>Load a file, don't fail if it is missing (a message is printed, though)</p>
-<pre> <loadfile
- property="mail.recipients"
- srcFile="recipientlist.txt">
- <filterchain>
+<pre>
+<loadfile property="mail.recipients"
+ srcFile="recipientlist.txt">
+ <filterchain>
<<a href="../Types/filterchain.html#striplinebreaks">striplinebreaks</a>/>
- </filterchain>
- </loadfile>
-</pre>
-Load a property which can be used as a parameter for another task (in this case mail),
-merging lines to ensure this happens.
+ </filterchain>
+</loadfile></pre>
+<p>Load a property which can be used as a parameter for another task (in this
+case <code>mail</code>), merging lines to ensure this happens.</p>
-<pre> <loadfile
- property="system.configuration.xml"
- srcFile="configuration.xml">
- <filterchain>
- <<a href="../Types/filterchain.html#expandproperties">expandproperties</a>/>
- </filterchain>
- </loadfile>
-</pre>
-Load an XML file into a property, expanding all properties declared
-in the file in the process.
+<pre>
+<loadfile property="system.configuration.xml"
+ srcFile="configuration.xml">
+ <filterchain>
+ <<a href="../Types/filterchain.html#expandproperties">expandproperties</a>/>
+ </filterchain>
+</loadfile></pre>
+<p>Load an XML file into a property, expanding all properties declared in the file in the
+process.</p>
</body>
</html>