Package org.apache.maven.surefire.booter
Class ForkingRunListener
- java.lang.Object
-
- org.apache.maven.surefire.booter.ForkingRunListener
-
- All Implemented Interfaces:
ConsoleLogger,ConsoleOutputReceiver,ConsoleStream,RunListener
public class ForkingRunListener extends java.lang.Object implements RunListener, ConsoleLogger, ConsoleOutputReceiver, ConsoleStream
Encodes the full output of the test run to the stdout stream.
This class and the ForkClient contain the full definition of the "wire-level" protocol used by the forked process. The protocol is *not* part of any public api and may change without further notice.
This class is threadsafe.
The synchronization in the underlying PrintStream (target instance) is used to preserve thread safety of the output stream. To perform multiple writes/prints for a single request, they must synchronize on "target.out" variable in this class.
-
-
Field Summary
Fields Modifier and Type Field Description private RunModerunModeprivate ForkedChannelEncodertargetprivate booleantrim
-
Constructor Summary
Constructors Constructor Description ForkingRunListener(ForkedChannelEncoder target, boolean trim)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddebug(java.lang.String message)voiderror(java.lang.String message)voiderror(java.lang.String message, java.lang.Throwable t)Simply delegates toerror( toString( t, message ) ).voiderror(java.lang.Throwable t)Simply delegates to methoderror(null, Throwable).voidinfo(java.lang.String message)booleanisDebugEnabled()booleanisErrorEnabled()booleanisInfoEnabled()booleanisWarnEnabled()RunModemarkAs(RunMode currentRunMode)Marks the listener with run mode, e.g.voidprintln(java.lang.String message)voidtestAssumptionFailure(ReportEntry report)Event fired when a test assumption failure was encountered.voidtestError(ReportEntry report)Event fired when a test ended with an error (non anticipated problem)voidtestExecutionSkippedByUser()Event fired skipping an execution of remaining test-set in other fork(s); or does nothing if no forks.voidtestFailed(ReportEntry report)Event fired when a test ended with a failure (anticipated problem)voidtestSetCompleted(TestSetReportEntry report)Indicates end of a given test-setvoidtestSetStarting(TestSetReportEntry report)Indicates the start of a given test-setvoidtestSkipped(ReportEntry report)Event fired when a test is skippedvoidtestStarting(ReportEntry report)Event fired when a test is about to startvoidtestSucceeded(ReportEntry report)Event fired when a test ended successfullyvoidwarning(java.lang.String message)voidwriteTestOutput(java.lang.String output, boolean newLine, boolean stdout)Forwards process output from the running test-case into the reporting system
-
-
-
Field Detail
-
target
private final ForkedChannelEncoder target
-
trim
private final boolean trim
-
runMode
private volatile RunMode runMode
-
-
Constructor Detail
-
ForkingRunListener
public ForkingRunListener(ForkedChannelEncoder target, boolean trim)
-
-
Method Detail
-
testSetStarting
public void testSetStarting(TestSetReportEntry report)
Description copied from interface:RunListenerIndicates the start of a given test-set- Specified by:
testSetStartingin interfaceRunListener- Parameters:
report- the report entry describing the testset
-
testSetCompleted
public void testSetCompleted(TestSetReportEntry report)
Description copied from interface:RunListenerIndicates end of a given test-set- Specified by:
testSetCompletedin interfaceRunListener- Parameters:
report- the report entry describing the testset
-
testStarting
public void testStarting(ReportEntry report)
Description copied from interface:RunListenerEvent fired when a test is about to start- Specified by:
testStartingin interfaceRunListener- Parameters:
report- The report entry to log for
-
testSucceeded
public void testSucceeded(ReportEntry report)
Description copied from interface:RunListenerEvent fired when a test ended successfully- Specified by:
testSucceededin interfaceRunListener- Parameters:
report- The report entry to log for
-
testAssumptionFailure
public void testAssumptionFailure(ReportEntry report)
Description copied from interface:RunListenerEvent fired when a test assumption failure was encountered. An assumption failure indicates that the test is not relevant- Specified by:
testAssumptionFailurein interfaceRunListener- Parameters:
report- The report entry to log for
-
testError
public void testError(ReportEntry report)
Description copied from interface:RunListenerEvent fired when a test ended with an error (non anticipated problem)- Specified by:
testErrorin interfaceRunListener- Parameters:
report- The report entry to log for
-
testFailed
public void testFailed(ReportEntry report)
Description copied from interface:RunListenerEvent fired when a test ended with a failure (anticipated problem)- Specified by:
testFailedin interfaceRunListener- Parameters:
report- The report entry to log for
-
testSkipped
public void testSkipped(ReportEntry report)
Description copied from interface:RunListenerEvent fired when a test is skipped- Specified by:
testSkippedin interfaceRunListener- Parameters:
report- The report entry to log for
-
testExecutionSkippedByUser
public void testExecutionSkippedByUser()
Description copied from interface:RunListenerEvent fired skipping an execution of remaining test-set in other fork(s); or does nothing if no forks. The method is called bySurefireProvider.(The event is fired after the Nth test failed to signal skipping the rest of test-set.)
- Specified by:
testExecutionSkippedByUserin interfaceRunListener
-
markAs
public RunMode markAs(RunMode currentRunMode)
Description copied from interface:RunListenerMarks the listener with run mode, e.g. normal run or re-run.- Specified by:
markAsin interfaceRunListener- Parameters:
currentRunMode- set current run- Returns:
- previous run mode; never returns null
-
writeTestOutput
public void writeTestOutput(java.lang.String output, boolean newLine, boolean stdout)Description copied from interface:ConsoleOutputReceiverForwards process output from the running test-case into the reporting system- Specified by:
writeTestOutputin interfaceConsoleOutputReceiver- Parameters:
output- stdout/sterr output from running testsnewLine- print on new linestdout- Indicates if this is stdout
-
isDebugEnabled
public boolean isDebugEnabled()
- Specified by:
isDebugEnabledin interfaceConsoleLogger
-
debug
public void debug(java.lang.String message)
- Specified by:
debugin interfaceConsoleLogger
-
isInfoEnabled
public boolean isInfoEnabled()
- Specified by:
isInfoEnabledin interfaceConsoleLogger
-
info
public void info(java.lang.String message)
- Specified by:
infoin interfaceConsoleLogger
-
isWarnEnabled
public boolean isWarnEnabled()
- Specified by:
isWarnEnabledin interfaceConsoleLogger
-
warning
public void warning(java.lang.String message)
- Specified by:
warningin interfaceConsoleLogger
-
isErrorEnabled
public boolean isErrorEnabled()
- Specified by:
isErrorEnabledin interfaceConsoleLogger
-
error
public void error(java.lang.String message)
- Specified by:
errorin interfaceConsoleLogger- Parameters:
message- message to log
-
error
public void error(java.lang.String message, java.lang.Throwable t)Description copied from interface:ConsoleLoggerSimply delegates toerror( toString( t, message ) ).- Specified by:
errorin interfaceConsoleLogger- Parameters:
message- message to logt- exception, message and trace to log
-
error
public void error(java.lang.Throwable t)
Description copied from interface:ConsoleLoggerSimply delegates to methoderror(null, Throwable).- Specified by:
errorin interfaceConsoleLogger- Parameters:
t- exception, message and trace to log
-
println
public void println(java.lang.String message)
- Specified by:
printlnin interfaceConsoleStream
-
-