Browse Source

option to suppress FAILED lines in JUnit log output. PR 35073

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@805415 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 16 years ago
parent
commit
083e036729
5 changed files with 43 additions and 5 deletions
  1. +4
    -0
      WHATSNEW
  2. +10
    -0
      docs/manual/OptionalTasks/junit.html
  3. +1
    -0
      src/main/org/apache/tools/ant/taskdefs/optional/junit/Constants.java
  4. +20
    -3
      src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java
  5. +8
    -2
      src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner.java

+ 4
- 0
WHATSNEW View File

@@ -847,6 +847,10 @@ Other changes:
<javac>.
Bugzilla Report 24359.

* It is now possible to suppress the "FAILED" lines sent to Ant's
logging system via <junit>'s new logFailedTests attribute.
Bugzilla Report 35073.

Changes from Ant 1.7.0 TO Ant 1.7.1
=============================================



+ 10
- 0
docs/manual/OptionalTasks/junit.html View File

@@ -228,6 +228,16 @@ elements</a>).</p>
<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>
</table>

<p>By using the <code>errorproperty</code> and <code>failureproperty</code>


+ 1
- 0
src/main/org/apache/tools/ant/taskdefs/optional/junit/Constants.java View File

@@ -35,4 +35,5 @@ public class Constants {
static final String LOGTESTLISTENEREVENTS = "logtestlistenerevents=";
static final String TESTSFILE = "testsfile=";
static final String TERMINATED_SUCCESSFULLY = "terminated successfully";
static final String LOG_FAILED_TESTS="logfailedtests=";
}

+ 20
- 3
src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java View File

@@ -155,6 +155,8 @@ public class JUnitTask extends Task {
// Do we send output to the formatters ?
private boolean outputToFormatters = true;

private boolean logFailedTests = true;

private File tmpDir;
private AntClassLoader classLoader = null;
private Permissions perm = null;
@@ -596,6 +598,16 @@ public class JUnitTask extends Task {
this.outputToFormatters = outputToFormatters;
}

/**
* If true, write a single "FAILED" line for failed tests to Ant's
* log system.
*
* @since Ant 1.8.0
*/
public void setLogFailedTests(boolean logFailedTests) {
this.logFailedTests = logFailedTests;
}

/**
* Assertions to enable in this program (if fork=true)
* @since Ant 1.6
@@ -949,6 +961,8 @@ public class JUnitTask extends Task {
+ String.valueOf(showOutput));
cmd.createArgument().setValue(Constants.OUTPUT_TO_FORMATTERS
+ String.valueOf(outputToFormatters));
cmd.createArgument().setValue(Constants.LOG_FAILED_TESTS
+ String.valueOf(logFailedTests));

cmd.createArgument().setValue(
Constants.LOGTESTLISTENEREVENTS + "true"); // #31885
@@ -1865,9 +1879,12 @@ public class JUnitTask extends Task {
+ (result.timedOut ? " (timeout)" : "")
+ (result.crashed ? " (crashed)" : ""), getLocation());
} else {
log(name + " FAILED"
+ (result.timedOut ? " (timeout)" : "")
+ (result.crashed ? " (crashed)" : ""), Project.MSG_ERR);
if (logFailedTests) {
log(name + " FAILED"
+ (result.timedOut ? " (timeout)" : "")
+ (result.crashed ? " (crashed)" : ""),
Project.MSG_ERR);
}
if (errorOccurredHere && test.getErrorProperty() != null) {
getProject().setNewProperty(test.getErrorProperty(), "true");
}


+ 8
- 2
src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner.java View File

@@ -680,6 +680,7 @@ public class JUnitTestRunner implements TestListener, JUnitTaskMirror.JUnitTestR
Properties props = new Properties();
boolean showOut = false;
boolean outputToFormat = true;
boolean logFailedTests = true;
boolean logTestListenerEvents = false;


@@ -723,6 +724,9 @@ public class JUnitTestRunner implements TestListener, JUnitTaskMirror.JUnitTestR
} else if (args[i].startsWith(Constants.OUTPUT_TO_FORMATTERS)) {
outputToFormat = Project.toBoolean(
args[i].substring(Constants.OUTPUT_TO_FORMATTERS.length()));
} else if (args[i].startsWith(Constants.LOG_FAILED_TESTS)) {
logFailedTests = Project.toBoolean(
args[i].substring(Constants.LOG_FAILED_TESTS.length()));
}
}

@@ -764,8 +768,10 @@ public class JUnitTestRunner implements TestListener, JUnitTaskMirror.JUnitTestR
if (code > returnCode) {
returnCode = code;
}
System.out.println("TEST " + t.getName()
+ " FAILED");
if (logFailedTests) {
System.out.println("TEST " + t.getName()
+ " FAILED");
}
}
}
}


Loading…
Cancel
Save