You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ti...@apache.org on 2022/02/12 20:30:49 UTC
[maven-surefire] 01/01: [SUREFIRE-2011] Updated abstractions which helps associating standard out/err with a test
This is an automated email from the ASF dual-hosted git repository.
tibordigana pushed a commit to branch test-run-id2
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
commit 7f92897c458251fc730d3c66bfddd01340e7f3b9
Author: tibor.digana <ti...@apache.org>
AuthorDate: Sat Feb 12 21:30:30 2022 +0100
[SUREFIRE-2011] Updated abstractions which helps associating standard out/err with a test
---
.../surefire/booterclient/output/ForkClient.java | 11 ++++----
.../surefire/report/DefaultReporterFactory.java | 4 +--
.../plugin/surefire/report/TestSetRunListener.java | 19 +++++++------
.../report/TestcycleConsoleOutputReceiver.java | 4 +--
.../booterclient/ForkingRunListenerTest.java | 9 ++++---
.../plugin/surefire/booterclient/MockReporter.java | 5 ++--
.../booterclient/TestSetMockReporterFactory.java | 4 +--
.../maven/plugin/surefire/extensions/E2ETest.java | 4 +--
.../api/booter/ForkingReporterFactory.java | 4 +--
.../surefire/api/booter/ForkingRunListener.java | 5 ++--
.../surefire/api/report/ConsoleOutputCapture.java | 6 ++---
.../ConsoleOutputReceiverForCurrentThread.java | 8 +++---
.../maven/surefire/api/report/ReporterFactory.java | 2 +-
...OutputReceiver.java => TestOutputReceiver.java} | 2 +-
.../{ReporterFactory.java => TestRunListener.java} | 21 ++-------------
.../surefire/booter/SurefireReflectorTest.java | 8 +++---
.../surefire/common/junit4/JUnit4RunListener.java | 22 ++++++++++-----
.../maven/surefire/common/junit4/MockReporter.java | 9 +++++--
.../junitplatform/JUnitPlatformProvider.java | 15 +++++------
.../surefire/junitplatform/RunListenerAdapter.java | 15 ++++++++---
.../junitplatform/JUnitPlatformProviderTest.java | 31 +++++++++++-----------
.../junitplatform/RunListenerAdapterTest.java | 6 ++---
.../maven/surefire/junit/JUnit3Provider.java | 6 ++---
.../maven/surefire/junit4/JUnit4Provider.java | 9 ++++---
.../surefire/junitcore/ConcurrentRunListener.java | 17 ++++++------
.../surefire/junitcore/JUnitCoreProvider.java | 3 ++-
.../surefire/junitcore/JUnitCoreRunListener.java | 4 +--
.../maven/surefire/junitcore/LogicalStream.java | 4 +--
.../junitcore/NonConcurrentRunListener.java | 10 +++----
.../maven/surefire/junitcore/TestMethod.java | 10 +++----
.../apache/maven/surefire/junitcore/TestSet.java | 8 +++---
.../junitcore/ConcurrentRunListenerTest.java | 4 +--
.../maven/surefire/junitcore/JUnitCoreTester.java | 9 +++----
.../maven/surefire/junitcore/MockReporter.java | 10 +++++--
.../maven/surefire/junitcore/Surefire746Test.java | 8 +++---
.../maven/surefire/testng/TestNGProvider.java | 7 +++--
36 files changed, 165 insertions(+), 158 deletions(-)
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java
index 9a2065b..7963980 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java
@@ -23,9 +23,10 @@ import org.apache.maven.plugin.surefire.booterclient.lazytestprovider.Notifiable
import org.apache.maven.plugin.surefire.log.api.ConsoleLogger;
import org.apache.maven.plugin.surefire.report.DefaultReporterFactory;
import org.apache.maven.surefire.api.event.Event;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.extensions.EventHandler;
import org.apache.maven.surefire.api.booter.MasterProcessChannelEncoder;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.api.report.ReportEntry;
import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.RunMode;
@@ -78,7 +79,7 @@ public class ForkClient
private final int forkNumber;
- private volatile RunListener testSetReporter;
+ private volatile TestRunListener testSetReporter;
/**
* Written by one Thread and read by another: Main Thread and ForkStarter's Thread.
@@ -379,7 +380,7 @@ public class ForkClient
/**
* Only {@link #getConsoleOutputReceiver()} may call this method in another Thread.
*/
- private RunListener getTestSetReporter()
+ private TestRunListener getTestSetReporter()
{
if ( testSetReporter == null )
{
@@ -423,9 +424,9 @@ public class ForkClient
return getTestSetReporter();
}
- public ConsoleOutputReceiver getConsoleOutputReceiver()
+ public TestOutputReceiver getConsoleOutputReceiver()
{
- return (ConsoleOutputReceiver) getTestSetReporter();
+ return getTestSetReporter();
}
private ConsoleLogger getOrCreateConsoleLogger()
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactory.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactory.java
index 693e63d..39dd86c 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactory.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactory.java
@@ -29,7 +29,7 @@ import org.apache.maven.surefire.extensions.StatelessReportEventListener;
import org.apache.maven.surefire.extensions.StatelessTestsetInfoConsoleReportEventListener;
import org.apache.maven.surefire.extensions.StatelessTestsetInfoFileReportEventListener;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.report.RunStatistics;
import org.apache.maven.surefire.api.report.StackTraceWriter;
import org.apache.maven.surefire.api.suite.RunResult;
@@ -97,7 +97,7 @@ public class DefaultReporterFactory
}
@Override
- public RunListener createReporter()
+ public TestRunListener createReporter()
{
TestSetRunListener testSetRunListener =
new TestSetRunListener( createConsoleReporter(),
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java
index 9ab198c..4e6e461 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java
@@ -31,10 +31,9 @@ import org.apache.maven.surefire.extensions.ConsoleOutputReportEventListener;
import org.apache.maven.surefire.extensions.StatelessReportEventListener;
import org.apache.maven.surefire.extensions.StatelessTestsetInfoConsoleReportEventListener;
import org.apache.maven.surefire.extensions.StatelessTestsetInfoFileReportEventListener;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.RunMode;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import static org.apache.maven.plugin.surefire.report.ReportEntryType.ERROR;
@@ -51,13 +50,13 @@ import static java.util.Objects.requireNonNull;
* @author Kristian Rosenvold
*/
public class TestSetRunListener
- implements RunListener, ConsoleOutputReceiver, ConsoleLogger
+ implements TestRunListener, ConsoleLogger
{
private final Queue<TestMethodStats> testMethodStats = new ConcurrentLinkedQueue<>();
private final TestSetStats detailsForThis;
- private final ConsoleOutputReportEventListener consoleOutputReceiver;
+ private final ConsoleOutputReportEventListener testOutputReceiver;
private final boolean briefOrPlainFormat;
@@ -83,7 +82,7 @@ public class TestSetRunListener
StatelessTestsetInfoFileReportEventListener<WrappedReportEntry, TestSetStats>
fileReporter,
StatelessReportEventListener<WrappedReportEntry, TestSetStats> simpleXMLReporter,
- ConsoleOutputReportEventListener consoleOutputReceiver,
+ ConsoleOutputReportEventListener testOutputReceiver,
StatisticsReporter statisticsReporter, boolean trimStackTrace,
boolean isPlainFormat, boolean briefOrPlainFormat, Object lock )
{
@@ -91,7 +90,7 @@ public class TestSetRunListener
this.fileReporter = fileReporter;
this.statisticsReporter = statisticsReporter;
this.simpleXMLReporter = simpleXMLReporter;
- this.consoleOutputReceiver = consoleOutputReceiver;
+ this.testOutputReceiver = testOutputReceiver;
this.briefOrPlainFormat = briefOrPlainFormat;
detailsForThis = new TestSetStats( trimStackTrace, isPlainFormat );
this.lock = lock;
@@ -184,7 +183,7 @@ public class TestSetRunListener
{
Utf8RecodingDeferredFileOutputStream stream = stdout ? testStdOut : testStdErr;
stream.write( output, newLine );
- consoleOutputReceiver.writeTestOutput( output, newLine, stdout );
+ testOutputReceiver.writeTestOutput( output, newLine, stdout );
}
}
catch ( IOException e )
@@ -198,7 +197,7 @@ public class TestSetRunListener
{
detailsForThis.testSetStart();
consoleReporter.testSetStarting( report );
- consoleOutputReceiver.testSetStarting( report );
+ testOutputReceiver.testSetStarting( report );
}
private void clearCapture()
@@ -217,7 +216,7 @@ public class TestSetRunListener
simpleXMLReporter.testSetCompleted( wrap, detailsForThis );
statisticsReporter.testSetCompleted();
consoleReporter.testSetCompleted( wrap, detailsForThis, testResults );
- consoleOutputReceiver.testSetCompleted( wrap );
+ testOutputReceiver.testSetCompleted( wrap );
consoleReporter.reset();
wrap.getStdout().free();
@@ -317,7 +316,7 @@ public class TestSetRunListener
public void close()
{
- consoleOutputReceiver.close();
+ testOutputReceiver.close();
}
private void addTestMethodStats()
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestcycleConsoleOutputReceiver.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestcycleConsoleOutputReceiver.java
index 3d32073..90cef51 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestcycleConsoleOutputReceiver.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestcycleConsoleOutputReceiver.java
@@ -19,15 +19,15 @@ package org.apache.maven.plugin.surefire.report;
* under the License.
*/
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.extensions.ConsoleOutputReportEventListener;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
/**
* @author Kristian Rosenvold
*/
public interface TestcycleConsoleOutputReceiver
- extends ConsoleOutputReceiver, ConsoleOutputReportEventListener
+ extends TestOutputReceiver, ConsoleOutputReportEventListener
{
void testSetStarting( TestSetReportEntry reportEntry );
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java
index 9853825..1e7a067 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java
@@ -31,14 +31,15 @@ import org.apache.maven.surefire.extensions.EventHandler;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.extensions.util.CountdownCloseable;
import org.apache.maven.surefire.api.report.CategorizedReportEntry;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.LegacyPojoStackTraceWriter;
import org.apache.maven.surefire.api.report.ReportEntry;
import org.apache.maven.surefire.api.report.ReporterException;
import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
import org.apache.maven.surefire.api.report.StackTraceWriter;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.util.internal.WritableBufferedByteChannel;
import javax.annotation.Nonnull;
@@ -180,7 +181,7 @@ public class ForkingRunListenerTest
public void testConsoleOutput() throws Exception
{
final StandardTestRun standardTestRun = new StandardTestRun();
- ConsoleOutputReceiver directConsoleReporter = (ConsoleOutputReceiver) standardTestRun.run();
+ TestOutputReceiver directConsoleReporter = standardTestRun.run();
directConsoleReporter.writeTestOutput( "HeyYou", false, true );
standardTestRun.assertExpected( MockReporter.STDOUT, "HeyYou" );
}
@@ -461,7 +462,7 @@ public class ForkingRunListenerTest
}
}
- private RunListener createForkingRunListener()
+ private TestRunListener createForkingRunListener()
{
WritableBufferedByteChannel channel = (WritableBufferedByteChannel) newChannel( printStream );
return new ForkingRunListener( new EventChannelEncoder( channel ), false );
@@ -471,7 +472,7 @@ public class ForkingRunListenerTest
{
private MockReporter reporter;
- public RunListener run()
+ public TestRunListener run()
throws ReporterException
{
reset();
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java
index aab5731..337131d 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java
@@ -20,9 +20,8 @@ package org.apache.maven.plugin.surefire.booterclient;
*/
import org.apache.maven.plugin.surefire.log.api.ConsoleLogger;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import org.apache.maven.surefire.api.report.RunMode;
@@ -34,7 +33,7 @@ import java.util.concurrent.atomic.AtomicInteger;
* Internal tests use only.
*/
public class MockReporter
- implements RunListener, ConsoleLogger, ConsoleOutputReceiver
+ implements TestRunListener, ConsoleLogger
{
private final List<String> events = new ArrayList<>();
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/TestSetMockReporterFactory.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/TestSetMockReporterFactory.java
index ace0e5d..7b05fb0 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/TestSetMockReporterFactory.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/TestSetMockReporterFactory.java
@@ -25,7 +25,7 @@ import org.apache.maven.plugin.surefire.extensions.SurefireStatelessReporter;
import org.apache.maven.plugin.surefire.extensions.SurefireStatelessTestsetInfoReporter;
import org.apache.maven.plugin.surefire.report.DefaultReporterFactory;
import org.apache.maven.plugin.surefire.log.api.NullConsoleLogger;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import java.io.File;
@@ -43,7 +43,7 @@ public class TestSetMockReporterFactory
}
@Override
- public RunListener createReporter()
+ public TestRunListener createReporter()
{
return new MockReporter();
}
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java
index d2a9c20..d059dd2 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java
@@ -25,7 +25,7 @@ import org.apache.maven.plugin.surefire.log.api.NullConsoleLogger;
import org.apache.maven.surefire.api.booter.Command;
import org.apache.maven.surefire.api.event.Event;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.booter.spi.EventChannelEncoder;
import org.apache.maven.surefire.booter.spi.SurefireMasterProcessChannelProcessorFactory;
import org.apache.maven.surefire.extensions.CommandReader;
@@ -133,7 +133,7 @@ public class E2ETest
@Override
public void run()
{
- ConsoleOutputReceiver target = new ConsoleOutputReceiver()
+ TestOutputReceiver target = new TestOutputReceiver()
{
@Override
public void writeTestOutput( String output, boolean newLine, boolean stdout )
diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingReporterFactory.java b/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingReporterFactory.java
index 31bbfa5..e53eeb4 100644
--- a/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingReporterFactory.java
+++ b/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingReporterFactory.java
@@ -20,7 +20,7 @@ package org.apache.maven.surefire.api.booter;
*/
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.suite.RunResult;
/**
@@ -43,7 +43,7 @@ public class ForkingReporterFactory
}
@Override
- public RunListener createReporter()
+ public TestRunListener createReporter()
{
return new ForkingRunListener( eventChannel, trimstackTrace );
}
diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingRunListener.java b/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingRunListener.java
index 169f358..0a44cfc 100644
--- a/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingRunListener.java
+++ b/surefire-api/src/main/java/org/apache/maven/surefire/api/booter/ForkingRunListener.java
@@ -20,10 +20,9 @@ package org.apache.maven.surefire.api.booter;
*/
import org.apache.maven.plugin.surefire.log.api.ConsoleLogger;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.ConsoleStream;
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.RunMode;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
@@ -48,7 +47,7 @@ import static java.util.Objects.requireNonNull;
* @author Kristian Rosenvold
*/
public class ForkingRunListener
- implements RunListener, ConsoleLogger, ConsoleOutputReceiver, ConsoleStream
+ implements TestRunListener, ConsoleLogger, ConsoleStream
{
private final MasterProcessChannelEncoder target;
diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputCapture.java b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputCapture.java
index 2298e7f..96a8eff 100644
--- a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputCapture.java
+++ b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputCapture.java
@@ -32,7 +32,7 @@ import static java.lang.System.setOut;
*/
public final class ConsoleOutputCapture
{
- public static void startCapture( ConsoleOutputReceiver target )
+ public static void startCapture( TestOutputReceiver target )
{
setOut( new ForwardingPrintStream( true, target ) );
setErr( new ForwardingPrintStream( false, target ) );
@@ -42,9 +42,9 @@ public final class ConsoleOutputCapture
extends PrintStream
{
private final boolean isStdout;
- private final ConsoleOutputReceiver target;
+ private final TestOutputReceiver target;
- ForwardingPrintStream( boolean stdout, ConsoleOutputReceiver target )
+ ForwardingPrintStream( boolean stdout, TestOutputReceiver target )
{
super( new NullOutputStream() );
isStdout = stdout;
diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputReceiverForCurrentThread.java b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputReceiverForCurrentThread.java
index 4843630..0874b2b 100644
--- a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputReceiverForCurrentThread.java
+++ b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputReceiverForCurrentThread.java
@@ -24,21 +24,21 @@ package org.apache.maven.surefire.api.report;
*/
public final class ConsoleOutputReceiverForCurrentThread
{
- private static final ThreadLocal<ConsoleOutputReceiver> CURRENT
+ private static final ThreadLocal<TestOutputReceiver> CURRENT
= new InheritableThreadLocal<>();
private ConsoleOutputReceiverForCurrentThread()
{
}
- public static ConsoleOutputReceiver get()
+ public static TestOutputReceiver get()
{
return CURRENT.get();
}
- public static void set( ConsoleOutputReceiver consoleOutputReceiver )
+ public static void set( TestOutputReceiver testOutputReceiver )
{
- CURRENT.set( consoleOutputReceiver );
+ CURRENT.set( testOutputReceiver );
}
public static void remove()
diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java
index af9057e..1e21236 100644
--- a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java
+++ b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java
@@ -33,7 +33,7 @@ public interface ReporterFactory
*
* @return A reporter instance
*/
- RunListener createReporter();
+ TestRunListener createReporter();
/**
* Closes the factory, freeing resources allocated in the factory.
diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputReceiver.java b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/TestOutputReceiver.java
similarity index 97%
rename from surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputReceiver.java
rename to surefire-api/src/main/java/org/apache/maven/surefire/api/report/TestOutputReceiver.java
index 99e47f4..1bd7279 100644
--- a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ConsoleOutputReceiver.java
+++ b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/TestOutputReceiver.java
@@ -23,7 +23,7 @@ package org.apache.maven.surefire.api.report;
* A receiver of stdout/sterr output from running tests. This receiver knows how to associate
* the output with a given testset.
*/
-public interface ConsoleOutputReceiver
+public interface TestOutputReceiver
{
/**
diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/TestRunListener.java
similarity index 65%
copy from surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java
copy to surefire-api/src/main/java/org/apache/maven/surefire/api/report/TestRunListener.java
index af9057e..29eaf35 100644
--- a/surefire-api/src/main/java/org/apache/maven/surefire/api/report/ReporterFactory.java
+++ b/surefire-api/src/main/java/org/apache/maven/surefire/api/report/TestRunListener.java
@@ -19,27 +19,10 @@ package org.apache.maven.surefire.api.report;
* under the License.
*/
-import org.apache.maven.surefire.api.suite.RunResult;
-
/**
- * Used by the providers to request (per-thread) run listeners.
*
- * @author Kristian Rosenvold
*/
-public interface ReporterFactory
+public interface TestRunListener
+ extends RunListener, TestOutputReceiver
{
- /**
- * Creates a reporter.
- *
- * @return A reporter instance
- */
- RunListener createReporter();
-
- /**
- * Closes the factory, freeing resources allocated in the factory.
- *
- * @return The run result
- */
- RunResult close();
-
}
diff --git a/surefire-booter/src/test/java/org/apache/maven/surefire/booter/SurefireReflectorTest.java b/surefire-booter/src/test/java/org/apache/maven/surefire/booter/SurefireReflectorTest.java
index b4290a7..1f275b5 100644
--- a/surefire-booter/src/test/java/org/apache/maven/surefire/booter/SurefireReflectorTest.java
+++ b/surefire-booter/src/test/java/org/apache/maven/surefire/booter/SurefireReflectorTest.java
@@ -25,7 +25,7 @@ import org.apache.maven.surefire.api.provider.ProviderParameters;
import org.apache.maven.surefire.api.provider.SurefireProvider;
import org.apache.maven.surefire.api.report.ReporterConfiguration;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.suite.RunResult;
import org.apache.maven.surefire.api.testset.DirectoryScannerParameters;
import org.apache.maven.surefire.api.testset.RunOrderParameters;
@@ -55,7 +55,7 @@ public class SurefireReflectorTest
ReporterFactory factory = new ReporterFactory()
{
@Override
- public RunListener createReporter()
+ public TestRunListener createReporter()
{
return null;
}
@@ -255,7 +255,7 @@ public class SurefireReflectorTest
ReporterFactory reporterFactory = new ReporterFactory()
{
@Override
- public RunListener createReporter()
+ public TestRunListener createReporter()
{
return null;
}
@@ -279,7 +279,7 @@ public class SurefireReflectorTest
ReporterFactory reporterFactory = new ReporterFactory()
{
@Override
- public RunListener createReporter()
+ public TestRunListener createReporter()
{
return null;
}
diff --git a/surefire-providers/common-junit4/src/main/java/org/apache/maven/surefire/common/junit4/JUnit4RunListener.java b/surefire-providers/common-junit4/src/main/java/org/apache/maven/surefire/common/junit4/JUnit4RunListener.java
index 7f4e97e..d316395 100644
--- a/surefire-providers/common-junit4/src/main/java/org/apache/maven/surefire/common/junit4/JUnit4RunListener.java
+++ b/surefire-providers/common-junit4/src/main/java/org/apache/maven/surefire/common/junit4/JUnit4RunListener.java
@@ -20,14 +20,16 @@ package org.apache.maven.surefire.common.junit4;
*/
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
import org.apache.maven.surefire.api.report.StackTraceWriter;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.testset.TestSetFailedException;
import org.apache.maven.surefire.api.util.internal.ClassMethod;
import org.junit.runner.Description;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
+import org.junit.runner.notification.RunListener;
import static org.apache.maven.surefire.common.junit4.JUnit4ProviderUtil.isFailureInsideJUnitItself;
import static org.apache.maven.surefire.common.junit4.JUnit4ProviderUtil.toClassMethod;
@@ -41,12 +43,14 @@ import static org.apache.maven.surefire.api.report.SimpleReportEntry.withExcepti
*
*/
public class JUnit4RunListener
- extends org.junit.runner.notification.RunListener
+ extends RunListener
+ implements TestOutputReceiver
{
- protected final RunListener reporter;
+ protected final TestRunListener reporter;
/**
- * This flag is set after a failure has occurred so that a {@link RunListener#testSucceeded} event is not fired.
+ * This flag is set after a failure has occurred so that a
+ * {@link org.apache.maven.surefire.api.report.RunListener#testSucceeded} event is not fired.
* This is necessary because JUnit4 always fires a
* {@link org.junit.runner.notification.RunListener#testRunFinished(Result)}
* event-- even if there was a failure.
@@ -58,7 +62,7 @@ public class JUnit4RunListener
*
* @param reporter the reporter to log testing events to
*/
- public JUnit4RunListener( RunListener reporter )
+ public JUnit4RunListener( TestRunListener reporter )
{
this.reporter = reporter;
}
@@ -163,7 +167,7 @@ public class JUnit4RunListener
}
/**
- * Delegates to {@link RunListener#testExecutionSkippedByUser()}.
+ * Delegates to {@link org.apache.maven.surefire.api.report.RunListener#testExecutionSkippedByUser()}.
*/
public void testExecutionSkippedByUser()
{
@@ -193,4 +197,10 @@ public class JUnit4RunListener
}
}
}
+
+ @Override
+ public void writeTestOutput( String output, boolean newLine, boolean stdout )
+ {
+ reporter.writeTestOutput( output, newLine, stdout );
+ }
}
diff --git a/surefire-providers/common-junit4/src/test/java/org/apache/maven/surefire/common/junit4/MockReporter.java b/surefire-providers/common-junit4/src/test/java/org/apache/maven/surefire/common/junit4/MockReporter.java
index 39947fc..cf543b3 100644
--- a/surefire-providers/common-junit4/src/test/java/org/apache/maven/surefire/common/junit4/MockReporter.java
+++ b/surefire-providers/common-junit4/src/test/java/org/apache/maven/surefire/common/junit4/MockReporter.java
@@ -20,8 +20,8 @@ package org.apache.maven.surefire.common.junit4;
*/
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.RunMode;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import java.util.ArrayList;
@@ -32,7 +32,7 @@ import java.util.concurrent.atomic.AtomicInteger;
* Internal tests use only.
*/
final class MockReporter
- implements RunListener
+ implements TestRunListener
{
private final List<String> events = new ArrayList<>();
@@ -127,4 +127,9 @@ final class MockReporter
public void testAssumptionFailure( ReportEntry report )
{
}
+
+ @Override
+ public void writeTestOutput( String output, boolean newLine, boolean stdout )
+ {
+ }
}
diff --git a/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProvider.java b/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProvider.java
index 8ff29c3..6c4e9ed 100644
--- a/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProvider.java
+++ b/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProvider.java
@@ -50,10 +50,8 @@ import java.util.logging.Logger;
import org.apache.maven.surefire.api.provider.AbstractProvider;
import org.apache.maven.surefire.api.provider.ProviderParameters;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReporterException;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.suite.RunResult;
import org.apache.maven.surefire.api.testset.TestListResolver;
import org.apache.maven.surefire.api.testset.TestSetFailedException;
@@ -122,20 +120,20 @@ public class JUnitPlatformProvider
final RunResult runResult;
try
{
- RunListener runListener = reporterFactory.createReporter();
- startCapture( ( ConsoleOutputReceiver ) runListener );
+ RunListenerAdapter adapter = new RunListenerAdapter( reporterFactory.createReporter() );
+ startCapture( adapter );
setupJunitLogger();
if ( forkTestSet instanceof TestsToRun )
{
- invokeAllTests( (TestsToRun) forkTestSet, runListener );
+ invokeAllTests( (TestsToRun) forkTestSet, adapter );
}
else if ( forkTestSet instanceof Class )
{
- invokeAllTests( fromClass( ( Class<?> ) forkTestSet ), runListener );
+ invokeAllTests( fromClass( ( Class<?> ) forkTestSet ), adapter );
}
else if ( forkTestSet == null )
{
- invokeAllTests( scanClasspath(), runListener );
+ invokeAllTests( scanClasspath(), adapter );
}
else
{
@@ -167,9 +165,8 @@ public class JUnitPlatformProvider
return parameters.getRunOrderCalculator().orderTestClasses( scannedClasses );
}
- private void invokeAllTests( TestsToRun testsToRun, RunListener runListener )
+ private void invokeAllTests( TestsToRun testsToRun, RunListenerAdapter adapter )
{
- RunListenerAdapter adapter = new RunListenerAdapter( runListener );
try
{
execute( testsToRun, adapter );
diff --git a/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/RunListenerAdapter.java b/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/RunListenerAdapter.java
index 101c6b8..59f6787 100644
--- a/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/RunListenerAdapter.java
+++ b/surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/RunListenerAdapter.java
@@ -34,11 +34,12 @@ import java.util.concurrent.ConcurrentMap;
import java.util.regex.Pattern;
import java.util.stream.Stream;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.report.PojoStackTraceWriter;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.SafeThrowable;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
import org.apache.maven.surefire.api.report.StackTraceWriter;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.junit.platform.engine.TestExecutionResult;
import org.junit.platform.engine.TestSource;
import org.junit.platform.engine.support.descriptor.ClassSource;
@@ -51,17 +52,17 @@ import org.junit.platform.launcher.TestPlan;
* @since 2.22.0
*/
final class RunListenerAdapter
- implements TestExecutionListener
+ implements TestExecutionListener, TestOutputReceiver
{
private static final Pattern COMMA_PATTERN = Pattern.compile( "," );
private final ConcurrentMap<TestIdentifier, Long> testStartTime = new ConcurrentHashMap<>();
private final ConcurrentMap<TestIdentifier, TestExecutionResult> failures = new ConcurrentHashMap<>();
private final ConcurrentMap<String, TestIdentifier> runningTestIdentifiersByUniqueId = new ConcurrentHashMap<>();
- private final RunListener runListener;
+ private final TestRunListener runListener;
private volatile TestPlan testPlan;
- RunListenerAdapter( RunListener runListener )
+ RunListenerAdapter( TestRunListener runListener )
{
this.runListener = runListener;
}
@@ -358,4 +359,10 @@ final class RunListenerAdapter
getFailures().clear();
testPlan = null;
}
+
+ @Override
+ public void writeTestOutput( String output, boolean newLine, boolean stdout )
+ {
+ runListener.writeTestOutput( output, newLine, stdout );
+ }
}
diff --git a/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProviderTest.java b/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProviderTest.java
index f7a9a42..a6ad81b 100644
--- a/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProviderTest.java
+++ b/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProviderTest.java
@@ -55,11 +55,12 @@ import java.util.Map;
import java.util.Set;
import org.apache.maven.surefire.api.provider.ProviderParameters;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.api.report.ReportEntry;
import org.apache.maven.surefire.api.report.ReporterFactory;
import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import org.apache.maven.surefire.api.testset.TestListResolver;
import org.apache.maven.surefire.api.testset.TestRequest;
@@ -95,7 +96,7 @@ public class JUnitPlatformProviderTest
{
Launcher launcher = LauncherFactory.create();
JUnitPlatformProvider provider = new JUnitPlatformProvider( providerParametersMock(), launcher );
- RunListener listener = mock( RunListener.class );
+ TestRunListener listener = mock( TestRunListener.class );
ArgumentCaptor<ReportEntry> testCaptor = ArgumentCaptor.forClass( ReportEntry.class );
ArgumentCaptor<TestSetReportEntry> testSetCaptor = ArgumentCaptor.forClass( TestSetReportEntry.class );
@@ -142,7 +143,7 @@ public class JUnitPlatformProviderTest
{
Launcher launcher = LauncherFactory.create();
JUnitPlatformProvider provider = new JUnitPlatformProvider( providerParametersMock(), launcher );
- RunListener listener = mock( RunListener.class );
+ TestRunListener listener = mock( TestRunListener.class );
ArgumentCaptor<ReportEntry> testCaptor = ArgumentCaptor.forClass( ReportEntry.class );
ArgumentCaptor<TestSetReportEntry> testSetCaptor = ArgumentCaptor.forClass( TestSetReportEntry.class );
@@ -426,7 +427,7 @@ public class JUnitPlatformProviderTest
ProviderParameters parameters = providerParametersMock();
JUnitPlatformProvider provider = new JUnitPlatformProvider( parameters, launcher );
- RunListener listener = mock( RunListener.class );
+ TestRunListener listener = mock( TestRunListener.class );
ArgumentCaptor<ReportEntry> entryCaptor = ArgumentCaptor.forClass( ReportEntry.class );
RunListenerAdapter adapter = new RunListenerAdapter( listener );
@@ -456,7 +457,7 @@ public class JUnitPlatformProviderTest
TestPlanSummaryListener executionListener = new TestPlanSummaryListener();
- RunListener listener = mock( RunListener.class );
+ TestRunListener listener = mock( TestRunListener.class );
ArgumentCaptor<ReportEntry> entryCaptor = ArgumentCaptor.forClass( ReportEntry.class );
RunListenerAdapter adapter = new RunListenerAdapter( listener );
@@ -494,7 +495,7 @@ public class JUnitPlatformProviderTest
TestPlanSummaryListener executionListener = new TestPlanSummaryListener();
- RunListener listener = mock( RunListener.class );
+ TestRunListener listener = mock( TestRunListener.class );
ArgumentCaptor<ReportEntry> entryCaptor = ArgumentCaptor.forClass( ReportEntry.class );
RunListenerAdapter adapter = new RunListenerAdapter( listener );
@@ -537,7 +538,7 @@ public class JUnitPlatformProviderTest
TestPlanSummaryListener executionListener = new TestPlanSummaryListener();
- RunListener listener = mock( RunListener.class );
+ TestRunListener listener = mock( TestRunListener.class );
ArgumentCaptor<ReportEntry> entryCaptor = ArgumentCaptor.forClass( ReportEntry.class );
RunListenerAdapter adapter = new RunListenerAdapter( listener );
@@ -597,7 +598,7 @@ public class JUnitPlatformProviderTest
public void allDiscoveredTestsAreInvokedForNullArgument()
throws Exception
{
- RunListener runListener = runListenerMock();
+ TestRunListener runListener = runListenerMock();
ProviderParameters providerParameters =
providerParametersMock( runListener, TestClass1.class, TestClass2.class );
Launcher launcher = LauncherFactory.create();
@@ -661,15 +662,15 @@ public class JUnitPlatformProviderTest
throws Exception
{
Launcher launcher = LauncherFactory.create();
- RunListener runListener = runListenerMock();
+ TestRunListener runListener = runListenerMock();
JUnitPlatformProvider provider = new JUnitPlatformProvider( providerParametersMock( runListener ), launcher );
invokeProvider( provider, VerboseTestClass.class );
ArgumentCaptor<String> captor = ArgumentCaptor.forClass( String.class );
- verify( (ConsoleOutputReceiver) runListener )
+ verify( runListener )
.writeTestOutput( captor.capture(), eq( true ), eq( true ) );
- verify( (ConsoleOutputReceiver) runListener )
+ verify( runListener )
.writeTestOutput( captor.capture(), eq( true ), eq( false ) );
assertThat( captor.getAllValues() )
.hasSize( 2 )
@@ -985,7 +986,7 @@ public class JUnitPlatformProviderTest
}
private static ProviderParameters providerParametersMock(
- RunListener runListener, Class<?>... testClasses )
+ TestRunListener runListener, Class<?>... testClasses )
{
TestListResolver testListResolver = new TestListResolver( "" );
return providerParametersMock( runListener, testListResolver, testClasses );
@@ -998,7 +999,7 @@ public class JUnitPlatformProviderTest
}
private static ProviderParameters providerParametersMock(
- RunListener runListener, TestListResolver testListResolver, Class<?>... testClasses )
+ TestRunListener runListener, TestListResolver testListResolver, Class<?>... testClasses )
{
TestsToRun testsToRun = newTestsToRun( testClasses );
@@ -1023,9 +1024,9 @@ public class JUnitPlatformProviderTest
return providerParameters;
}
- private static RunListener runListenerMock()
+ private static TestRunListener runListenerMock()
{
- return mock( RunListener.class, withSettings().extraInterfaces( ConsoleOutputReceiver.class ) );
+ return mock( TestRunListener.class, withSettings().extraInterfaces( TestOutputReceiver.class ) );
}
private static Set<String> failedTestDisplayNames( TestExecutionSummary summary )
diff --git a/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/RunListenerAdapterTest.java b/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/RunListenerAdapterTest.java
index d13176d..10c488d 100644
--- a/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/RunListenerAdapterTest.java
+++ b/surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/RunListenerAdapterTest.java
@@ -45,9 +45,9 @@ import java.lang.reflect.Method;
import java.util.Map;
import java.util.Optional;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.report.PojoStackTraceWriter;
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
import org.apache.maven.surefire.api.report.StackTraceWriter;
import org.junit.Before;
@@ -79,14 +79,14 @@ public class RunListenerAdapterTest
{
private static final ConfigurationParameters CONFIG_PARAMS = mock( ConfigurationParameters.class );
- private RunListener listener;
+ private TestRunListener listener;
private RunListenerAdapter adapter;
@Before
public void setUp()
{
- listener = mock( RunListener.class );
+ listener = mock( TestRunListener.class );
adapter = new RunListenerAdapter( listener );
adapter.testPlanExecutionStarted( TestPlan.from( emptyList() ) );
}
diff --git a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnit3Provider.java b/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnit3Provider.java
index 3c9825d..1291e01 100644
--- a/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnit3Provider.java
+++ b/surefire-providers/surefire-junit3/src/main/java/org/apache/maven/surefire/junit/JUnit3Provider.java
@@ -19,11 +19,11 @@ package org.apache.maven.surefire.junit;
* under the License.
*/
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.common.junit3.JUnit3Reflector;
import org.apache.maven.surefire.common.junit3.JUnit3TestChecker;
import org.apache.maven.surefire.api.provider.AbstractProvider;
import org.apache.maven.surefire.api.provider.ProviderParameters;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReporterFactory;
import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
@@ -95,8 +95,8 @@ public class JUnit3Provider
RunResult runResult;
try
{
- RunListener reporter = reporterFactory.createReporter();
- startCapture( (ConsoleOutputReceiver) reporter );
+ TestRunListener reporter = reporterFactory.createReporter();
+ startCapture( reporter );
Map<String, String> systemProperties = systemProps();
setSystemManager( System.getProperty( "surefire.security.manager" ) );
diff --git a/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4Provider.java b/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4Provider.java
index 3f4b095..9db1cd8 100644
--- a/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4Provider.java
+++ b/surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4Provider.java
@@ -22,13 +22,13 @@ package org.apache.maven.surefire.junit4;
import org.apache.maven.surefire.api.booter.Command;
import org.apache.maven.surefire.api.provider.CommandChainReader;
import org.apache.maven.surefire.api.provider.CommandListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.common.junit4.JUnit4RunListener;
import org.apache.maven.surefire.common.junit4.JUnit4TestChecker;
import org.apache.maven.surefire.common.junit4.JUnitTestFailureListener;
import org.apache.maven.surefire.common.junit4.Notifier;
import org.apache.maven.surefire.api.provider.AbstractProvider;
import org.apache.maven.surefire.api.provider.ProviderParameters;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.report.PojoStackTraceWriter;
import org.apache.maven.surefire.api.report.ReporterFactory;
import org.apache.maven.surefire.api.report.RunListener;
@@ -121,9 +121,10 @@ public class JUnit4Provider
RunResult runResult;
try
{
- RunListener reporter = reporterFactory.createReporter();
+ TestRunListener reporter = reporterFactory.createReporter();
+ JUnit4RunListener listener = new JUnit4RunListener( reporter );
- startCapture( (ConsoleOutputReceiver) reporter );
+ startCapture( listener );
// startCapture() called in prior to setTestsToRun()
if ( testsToRun == null )
@@ -131,7 +132,7 @@ public class JUnit4Provider
setTestsToRun( forkTestSet );
}
- Notifier notifier = new Notifier( new JUnit4RunListener( reporter ), getSkipAfterFailureCount() );
+ Notifier notifier = new Notifier( listener, getSkipAfterFailureCount() );
Result result = new Result();
notifier.addListeners( createCustomListeners( customRunListeners ) )
.addListener( result.createListener() );
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/ConcurrentRunListener.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/ConcurrentRunListener.java
index ce8ad88..550edf1 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/ConcurrentRunListener.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/ConcurrentRunListener.java
@@ -20,13 +20,12 @@ package org.apache.maven.surefire.junitcore;
*/
import java.util.Map;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ConsoleStream;
import org.apache.maven.surefire.api.report.ReportEntry;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.RunMode;
import org.apache.maven.surefire.api.report.StackTraceWriter;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import org.apache.maven.surefire.api.testset.TestSetFailedException;
@@ -44,11 +43,11 @@ import static org.apache.maven.surefire.junitcore.TestMethod.getThreadTestMethod
* @author Kristian Rosenvold
*/
public abstract class ConcurrentRunListener
- implements RunListener, ConsoleOutputReceiver
+ implements TestRunListener
{
private final Map<String, TestSet> classMethodCounts;
- private final ThreadLocal<RunListener> reporterManagerThreadLocal;
+ private final ThreadLocal<TestRunListener> reporterManagerThreadLocal;
private final boolean reportImmediately;
@@ -61,10 +60,10 @@ public abstract class ConcurrentRunListener
this.reportImmediately = reportImmediately;
this.classMethodCounts = classMethodCounts;
this.consoleStream = consoleStream;
- reporterManagerThreadLocal = new ThreadLocal<RunListener>()
+ reporterManagerThreadLocal = new ThreadLocal<TestRunListener>()
{
@Override
- protected RunListener initialValue()
+ protected TestRunListener initialValue()
{
return reporterFactory.createReporter();
}
@@ -81,7 +80,7 @@ public abstract class ConcurrentRunListener
{
try
{
- final RunListener reporterManager = getRunListener();
+ final TestRunListener reporterManager = getRunListener();
for ( TestSet testSet : classMethodCounts.values() )
{
testSet.replay( reporterManager );
@@ -201,12 +200,12 @@ public abstract class ConcurrentRunListener
return classMethodCounts.get( description.getSourceName() );
}
- RunListener getRunListener()
+ TestRunListener getRunListener()
{
return reporterManagerThreadLocal.get();
}
- public static ConcurrentRunListener createInstance( Map<String, TestSet> classMethodCounts,
+ public static TestRunListener createInstance( Map<String, TestSet> classMethodCounts,
ReporterFactory reporterFactory,
boolean parallelClasses, boolean parallelBoth,
ConsoleStream consoleStream )
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreProvider.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreProvider.java
index 6877b00..a575281 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreProvider.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreProvider.java
@@ -22,6 +22,7 @@ package org.apache.maven.surefire.junitcore;
import org.apache.maven.surefire.api.booter.Command;
import org.apache.maven.surefire.api.provider.CommandChainReader;
import org.apache.maven.surefire.api.provider.CommandListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.common.junit4.JUnit4RunListener;
import org.apache.maven.surefire.common.junit4.JUnitTestFailureListener;
import org.apache.maven.surefire.common.junit4.Notifier;
@@ -251,7 +252,7 @@ public class JUnitCoreProvider
{
final Map<String, TestSet> testSetMap = new ConcurrentHashMap<>();
- ConcurrentRunListener listener = createInstance( testSetMap, reporterFactory, isParallelTypes(),
+ TestRunListener listener = createInstance( testSetMap, reporterFactory, isParallelTypes(),
isParallelMethodsAndTypes(), consoleStream );
startCapture( listener );
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java
index 37f3759..f272c21 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreRunListener.java
@@ -19,9 +19,9 @@ package org.apache.maven.surefire.junitcore;
* under the License.
*/
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.common.junit4.JUnit4RunListener;
import org.apache.maven.surefire.common.junit4.JUnit4StackTraceWriter;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.StackTraceWriter;
import org.junit.runner.Description;
import org.junit.runner.Result;
@@ -49,7 +49,7 @@ public class JUnitCoreRunListener
* @param reporter the report manager to log testing events to
* @param classMethodCounts A map of methods
*/
- public JUnitCoreRunListener( RunListener reporter, Map<String, TestSet> classMethodCounts )
+ public JUnitCoreRunListener( TestRunListener reporter, Map<String, TestSet> classMethodCounts )
{
super( reporter );
this.classMethodCounts = classMethodCounts;
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/LogicalStream.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/LogicalStream.java
index cf70d17..db1840b 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/LogicalStream.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/LogicalStream.java
@@ -19,7 +19,7 @@ package org.apache.maven.surefire.junitcore;
* under the License.
*/
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;
@@ -50,7 +50,7 @@ final class LogicalStream
output.add( new Entry( stdout, text, newLine ) );
}
- void writeDetails( ConsoleOutputReceiver outputReceiver )
+ void writeDetails( TestOutputReceiver outputReceiver )
{
for ( Entry entry = output.poll(); entry != null; entry = output.poll() )
{
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/NonConcurrentRunListener.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/NonConcurrentRunListener.java
index 262a4ee..c8f3d68 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/NonConcurrentRunListener.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/NonConcurrentRunListener.java
@@ -19,10 +19,10 @@ package org.apache.maven.surefire.junitcore;
* under the License.
*/
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.util.internal.ClassMethod;
import org.apache.maven.surefire.common.junit4.JUnit4RunListener;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import org.apache.maven.surefire.api.testset.TestSetFailedException;
@@ -43,13 +43,13 @@ import static org.apache.maven.surefire.api.util.internal.ObjectUtils.systemProp
*/
public class NonConcurrentRunListener
extends JUnit4RunListener
- implements ConsoleOutputReceiver
+ implements TestOutputReceiver
{
private Description currentTestSetDescription;
private Description lastFinishedDescription;
- public NonConcurrentRunListener( RunListener reporter )
+ public NonConcurrentRunListener( TestRunListener reporter )
throws TestSetFailedException
{
super( reporter );
@@ -58,7 +58,7 @@ public class NonConcurrentRunListener
public synchronized void writeTestOutput( String output, boolean newLine, boolean stdout )
{
// We can write immediately: no parallelism and a single class.
- ( (ConsoleOutputReceiver) reporter ).writeTestOutput( output, newLine, stdout );
+ reporter.writeTestOutput( output, newLine, stdout );
}
@Override
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestMethod.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestMethod.java
index ae38976..164c71d 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestMethod.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestMethod.java
@@ -20,10 +20,10 @@ package org.apache.maven.surefire.junitcore;
*/
import org.apache.maven.surefire.api.report.CategorizedReportEntry;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
+import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiverForCurrentThread;
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import java.util.concurrent.atomic.AtomicReference;
@@ -34,7 +34,7 @@ import java.util.concurrent.atomic.AtomicReference;
* without any actual parallel access
*/
class TestMethod
- implements ConsoleOutputReceiver
+ implements TestOutputReceiver
{
private static final InheritableThreadLocal<TestMethod> TEST_METHOD = new InheritableThreadLocal<>();
@@ -112,7 +112,7 @@ class TestMethod
return endTime;
}
- void replay( RunListener reporter )
+ void replay( TestRunListener reporter )
{
if ( testIgnored != null )
{
@@ -125,7 +125,7 @@ class TestMethod
LogicalStream ls = output.get();
if ( ls != null )
{
- ls.writeDetails( (ConsoleOutputReceiver) reporter );
+ ls.writeDetails( reporter );
}
if ( testFailure != null )
diff --git a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestSet.java b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestSet.java
index 694257e..8f30186 100644
--- a/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestSet.java
+++ b/surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/TestSet.java
@@ -20,8 +20,8 @@ package org.apache.maven.surefire.junitcore;
*/
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import java.util.Collection;
@@ -60,7 +60,7 @@ public class TestSet
this.testClassName = testClassName;
}
- public void replay( RunListener target )
+ public void replay( TestRunListener target )
{
if ( played.compareAndSet( false, true ) )
{
@@ -133,7 +133,7 @@ public class TestSet
testMethods.add( testMethod );
}
- public void incrementFinishedTests( RunListener reporterManager, boolean reportImmediately )
+ public void incrementFinishedTests( TestRunListener reporterManager, boolean reportImmediately )
{
numberOfCompletedChildren.incrementAndGet();
if ( allScheduled && isAllTestsDone() && reportImmediately )
@@ -142,7 +142,7 @@ public class TestSet
}
}
- public void setAllScheduled( RunListener reporterManager )
+ public void setAllScheduled( TestRunListener reporterManager )
{
allScheduled = true;
if ( isAllTestsDone() )
diff --git a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/ConcurrentRunListenerTest.java b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/ConcurrentRunListenerTest.java
index 8940b51..c512a51 100644
--- a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/ConcurrentRunListenerTest.java
+++ b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/ConcurrentRunListenerTest.java
@@ -27,7 +27,7 @@ import org.apache.maven.plugin.surefire.report.DefaultReporterFactory;
import org.apache.maven.surefire.api.report.ConsoleStream;
import org.apache.maven.surefire.api.report.DefaultDirectConsoleReporter;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.report.RunStatistics;
import org.apache.maven.surefire.api.testset.TestSetFailedException;
@@ -149,7 +149,7 @@ public class ConcurrentRunListenerTest
DefaultReporterFactory reporterFactory = createReporterFactory();
HashMap<String, TestSet> classMethodCounts = new HashMap<>();
final ConsoleStream defaultConsoleReporter = new DefaultDirectConsoleReporter( System.out );
- RunListener reporter =
+ TestRunListener reporter =
new ClassesParallelRunListener( classMethodCounts, reporterFactory, defaultConsoleReporter );
JUnitCoreRunListener runListener = new JUnitCoreRunListener( reporter, classMethodCounts );
RunStatistics result = runClasses( reporterFactory, runListener, classes );
diff --git a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/JUnitCoreTester.java b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/JUnitCoreTester.java
index defc3a9..6a36bdc 100644
--- a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/JUnitCoreTester.java
+++ b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/JUnitCoreTester.java
@@ -25,10 +25,9 @@ import org.apache.maven.plugin.surefire.extensions.SurefireStatelessReporter;
import org.apache.maven.plugin.surefire.extensions.SurefireStatelessTestsetInfoReporter;
import org.apache.maven.plugin.surefire.log.api.NullConsoleLogger;
import org.apache.maven.plugin.surefire.report.DefaultReporterFactory;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.DefaultDirectConsoleReporter;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.testset.TestSetFailedException;
import org.junit.runner.Computer;
import org.junit.runner.JUnitCore;
@@ -66,9 +65,9 @@ public class JUnitCoreTester
try
{
final HashMap<String, TestSet> classMethodCounts = new HashMap<>();
- RunListener reporter = createInstance( classMethodCounts, reporterManagerFactory, parallelClasses, false,
- new DefaultDirectConsoleReporter( System.out ) );
- startCapture( (ConsoleOutputReceiver) reporter );
+ TestRunListener reporter = createInstance( classMethodCounts, reporterManagerFactory, parallelClasses,
+ false, new DefaultDirectConsoleReporter( System.out ) );
+ startCapture( reporter );
JUnitCoreRunListener runListener = new JUnitCoreRunListener( reporter, classMethodCounts );
JUnitCore junitCore = new JUnitCore();
diff --git a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/MockReporter.java b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/MockReporter.java
index 3694f92..e533bf6 100644
--- a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/MockReporter.java
+++ b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/MockReporter.java
@@ -23,7 +23,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
import org.apache.maven.surefire.api.report.ReportEntry;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.report.TestSetReportEntry;
import org.apache.maven.surefire.api.report.RunMode;
@@ -31,7 +31,7 @@ import org.apache.maven.surefire.api.report.RunMode;
* Internal tests use only.
*/
final class MockReporter
- implements RunListener
+ implements TestRunListener
{
private final List<String> events = new ArrayList<>();
@@ -136,4 +136,10 @@ final class MockReporter
{
return events.contains( event );
}
+
+ @Override
+ public void writeTestOutput( String output, boolean newLine, boolean stdout )
+ {
+
+ }
}
diff --git a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/Surefire746Test.java b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/Surefire746Test.java
index 38690ae..eb8f736 100644
--- a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/Surefire746Test.java
+++ b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/Surefire746Test.java
@@ -46,12 +46,12 @@ import java.util.concurrent.ConcurrentHashMap;
import org.apache.maven.surefire.api.booter.BaseProviderFactory;
import org.apache.maven.surefire.api.booter.ProviderParameterNames;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.common.junit4.JUnit4RunListener;
import org.apache.maven.surefire.common.junit4.Notifier;
import org.apache.maven.surefire.api.report.DefaultDirectConsoleReporter;
import org.apache.maven.surefire.api.report.ReporterConfiguration;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
import org.apache.maven.surefire.api.suite.RunResult;
import org.apache.maven.surefire.api.testset.TestSetFailedException;
import org.apache.maven.surefire.api.util.TestsToRun;
@@ -120,7 +120,7 @@ public class Surefire746Test
final Map<String, TestSet> testSetMap = new ConcurrentHashMap<>();
- RunListener listener = ConcurrentRunListener.createInstance( testSetMap, reporterFactory, false, false,
+ TestRunListener listener = ConcurrentRunListener.createInstance( testSetMap, reporterFactory, false, false,
new DefaultDirectConsoleReporter( System.out ) );
TestsToRun testsToRun = new TestsToRun( Collections.<Class<?>>singleton( TestClassTest.class ) );
@@ -172,13 +172,13 @@ public class Surefire746Test
@Override
public void run( RunNotifier notifier )
{
- notifier.addListener( new TestRunListener() );
+ notifier.addListener( new Listener() );
super.run( notifier );
}
}
- private static class TestRunListener extends org.junit.runner.notification.RunListener
+ private static class Listener extends org.junit.runner.notification.RunListener
{
@Override
public void testFinished( Description description ) throws Exception
diff --git a/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGProvider.java b/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGProvider.java
index 5878248..583ebd7 100644
--- a/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGProvider.java
+++ b/surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGProvider.java
@@ -25,10 +25,9 @@ import org.apache.maven.surefire.api.provider.CommandListener;
import org.apache.maven.surefire.api.cli.CommandLineOption;
import org.apache.maven.surefire.api.provider.AbstractProvider;
import org.apache.maven.surefire.api.provider.ProviderParameters;
-import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReporterConfiguration;
import org.apache.maven.surefire.api.report.ReporterFactory;
-import org.apache.maven.surefire.api.report.RunListener;
+import org.apache.maven.surefire.api.report.TestRunListener;
import org.apache.maven.surefire.api.suite.RunResult;
import org.apache.maven.surefire.testng.utils.FailFastEventsSingleton;
import org.apache.maven.surefire.api.testset.TestListResolver;
@@ -98,12 +97,12 @@ public class TestNGProvider
}
final ReporterFactory reporterFactory = providerParameters.getReporterFactory();
- final RunListener reporter = reporterFactory.createReporter();
+ final TestRunListener reporter = reporterFactory.createReporter();
/*
* {@link org.apache.maven.surefire.api.report.ConsoleOutputCapture#startCapture(ConsoleOutputReceiver)}
* called in prior to initializing variable {@link #testsToRun}
*/
- startCapture( (ConsoleOutputReceiver) reporter );
+ startCapture( reporter );
RunResult runResult;
try