bodewig 2003/09/17 01:20:54 Modified: src/main/org/apache/tools/ant/taskdefs/optional/junit JUnitTask.java Log: Log tests that have timed out in the summary as well. PR: 23160 Submitted by: Martijn Kruithof <ant at kruithof dot xs4all dot nl> Revision Changes Path 1.80 +28 -16 ant/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java Index: JUnitTask.java =================================================================== RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java,v retrieving revision 1.79 retrieving revision 1.80 diff -u -r1.79 -r1.80 --- JUnitTask.java 11 Sep 2003 14:04:16 -0000 1.79 +++ JUnitTask.java 17 Sep 2003 08:20:54 -0000 1.80 @@ -1118,26 +1118,38 @@ if (outFile != null && formatter != null) { try { OutputStream out = new FileOutputStream(outFile); - formatter.setOutput(out); - formatter.startTestSuite(test); - test.setCounts(0, 0, 1); - Test t = new Test() { - public int countTestCases() { return 0; } - public void run(TestResult r) { - throw new AssertionFailedError("Timeout occurred"); - } - }; - formatter.startTest(t); - formatter - .addError(t, - new AssertionFailedError("Timeout occurred")); - - formatter.endTestSuite(test); + addTimeout(test, formatter, out); } catch (IOException e) { // ignore } } } + if (summary) { + SummaryJUnitResultFormatter f = new SummaryJUnitResultFormatter(); + f.setWithOutAndErr("withoutanderr".equalsIgnoreCase(summaryValue)); + addTimeout(test, f, getDefaultOutput()); + } + } + + /** + * Adds the actual timeout to the formatter. + * Only used from the logTimeout method. + * @since Ant 1.6 + */ + private void addTimeout(JUnitTest test, JUnitResultFormatter formatter, + OutputStream out) { + formatter.setOutput(out); + formatter.startTestSuite(test); + test.setCounts(0, 0, 1); + Test t = new Test() { + public int countTestCases() { return 0; } + public void run(TestResult r) { + throw new AssertionFailedError("Timeout occurred"); + } + }; + formatter.startTest(t); + formatter.addError(t, new AssertionFailedError("Timeout occurred")); + formatter.endTestSuite(test); } /**
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]