diff --git a/build.xml b/build.xml
index 348393211..fe932306b 100644
--- a/build.xml
+++ b/build.xml
@@ -315,7 +315,9 @@
-
+
+
+
diff --git a/docs/junit.html b/docs/junit.html
index fe8d16036..c17d761db 100644
--- a/docs/junit.html
+++ b/docs/junit.html
@@ -91,9 +91,10 @@ href="index.html#arg">Command line arguments.
formatter
The results of the tests can be printed in different
-formats. Output will always be sent to a file, the name of the file is
-determined by the name of the test and can be set by the
-outfile
attribute of <test>
.
+formats. Output will always be sent to a file unless you set the
+usefile attribute to false, the name of the file is determined by the
+name of the test and can be set by the outfile
attribute
+of <test>
.
There are two predefined formatters, one prints the test results in
XML format, the other emits plain text. Custom formatters that need to
@@ -121,6 +122,12 @@ can be specified.
Extension to append to the output filename. |
Yes, if classname has been used. |
+
+ usefile |
+ Boolean that determines whether output should be
+ sent to a file. |
+ No, default true. |
+
test
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/FormatterElement.java b/src/main/org/apache/tools/ant/taskdefs/optional/junit/FormatterElement.java
index f2103329c..c1a346600 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/junit/FormatterElement.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/FormatterElement.java
@@ -73,6 +73,7 @@ public class FormatterElement {
private String extension;
private OutputStream out = System.out;
private File outFile;
+ private boolean useFile = true;
public void setType(TypeAttribute type) {
if ("xml".equals(type.getValue())) {
@@ -108,6 +109,14 @@ public class FormatterElement {
this.out = out;
}
+ public void setUseFile(boolean useFile) {
+ this.useFile = useFile;
+ }
+
+ boolean getUseFile() {
+ return useFile;
+ }
+
JUnitResultFormatter createFormatter() throws BuildException {
if (classname == null) {
throw new BuildException("you must specify type or classname");
@@ -135,7 +144,7 @@ public class FormatterElement {
JUnitResultFormatter r = (JUnitResultFormatter) o;
- if (outFile != null) {
+ if (useFile && outFile != null) {
try {
out = new FileOutputStream(outFile);
} catch (java.io.IOException e) {
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java b/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java
index 7df1e5592..22da24538 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java
@@ -193,6 +193,9 @@ public class JUnitTask extends Task {
}
int exitValue = JUnitTestRunner.ERRORS;
+
+ System.err.println(test.getFork());
+
if (!test.getFork()) {
JUnitTestRunner runner =
new JUnitTestRunner(test, test.getHaltonerror(),
@@ -208,14 +211,22 @@ public class JUnitTask extends Task {
for (int i=0; i