Class OutcomeDelayingEngineExecutionListener
- java.lang.Object
-
- org.junit.platform.launcher.core.DelegatingEngineExecutionListener
-
- org.junit.platform.launcher.core.OutcomeDelayingEngineExecutionListener
-
- All Implemented Interfaces:
EngineExecutionListener
class OutcomeDelayingEngineExecutionListener extends DelegatingEngineExecutionListener
Delays reporting of engine skipped/finished events so that exceptions thrown by engines can be reported to listeners.- Since:
- 1.6
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
OutcomeDelayingEngineExecutionListener.Outcome
-
Field Summary
Fields Modifier and Type Field Description private TestDescriptor
engineDescriptor
private boolean
engineStarted
private TestExecutionResult
executionResult
private OutcomeDelayingEngineExecutionListener.Outcome
outcome
private java.lang.String
skipReason
-
Constructor Summary
Constructors Constructor Description OutcomeDelayingEngineExecutionListener(EngineExecutionListener delegate, TestDescriptor engineDescriptor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
executionFinished(TestDescriptor testDescriptor, TestExecutionResult executionResult)
Must be called when the execution of a leaf or subtree of the test tree has finished, regardless of the outcome.void
executionSkipped(TestDescriptor testDescriptor, java.lang.String reason)
Must be called when the execution of a leaf or subtree of the test tree has been skipped.void
executionStarted(TestDescriptor testDescriptor)
Must be called when the execution of a leaf or subtree of the test tree is about to be started.(package private) void
reportEngineFailure(java.lang.Throwable throwable)
(package private) void
reportEngineOutcome()
-
Methods inherited from class org.junit.platform.launcher.core.DelegatingEngineExecutionListener
dynamicTestRegistered, reportingEntryPublished
-
-
-
-
Field Detail
-
engineDescriptor
private final TestDescriptor engineDescriptor
-
engineStarted
private volatile boolean engineStarted
-
outcome
private volatile OutcomeDelayingEngineExecutionListener.Outcome outcome
-
skipReason
private volatile java.lang.String skipReason
-
executionResult
private volatile TestExecutionResult executionResult
-
-
Constructor Detail
-
OutcomeDelayingEngineExecutionListener
OutcomeDelayingEngineExecutionListener(EngineExecutionListener delegate, TestDescriptor engineDescriptor)
-
-
Method Detail
-
executionSkipped
public void executionSkipped(TestDescriptor testDescriptor, java.lang.String reason)
Description copied from interface:EngineExecutionListener
Must be called when the execution of a leaf or subtree of the test tree has been skipped.The
TestDescriptor
may represent a test or a container. In the case of a container, engines must not fire any additional events for its descendants.A skipped test or subtree of tests must not be reported as started or finished.
- Specified by:
executionSkipped
in interfaceEngineExecutionListener
- Overrides:
executionSkipped
in classDelegatingEngineExecutionListener
- Parameters:
testDescriptor
- the descriptor of the skipped test or containerreason
- a human-readable message describing why the execution has been skipped
-
executionStarted
public void executionStarted(TestDescriptor testDescriptor)
Description copied from interface:EngineExecutionListener
Must be called when the execution of a leaf or subtree of the test tree is about to be started.The
TestDescriptor
may represent a test or a container. In the case of a container, engines have to fire additional events for its children.This method may only be called if the test or container has not been skipped.
This method must be called for a container
TestDescriptor
before starting or skipping any of its children.- Specified by:
executionStarted
in interfaceEngineExecutionListener
- Overrides:
executionStarted
in classDelegatingEngineExecutionListener
- Parameters:
testDescriptor
- the descriptor of the started test or container
-
executionFinished
public void executionFinished(TestDescriptor testDescriptor, TestExecutionResult executionResult)
Description copied from interface:EngineExecutionListener
Must be called when the execution of a leaf or subtree of the test tree has finished, regardless of the outcome.The
TestDescriptor
may represent a test or a container.This method may only be called if the test or container has not been skipped.
This method must be called for a container
TestIdentifier
after all of its children have been skipped or have finished.The
TestExecutionResult
describes the result of the execution for the suppliedtestDescriptor
. The result does not include or aggregate the results of its children. For example, a container with a failing test must be reported asSUCCESSFUL
even if one or more of its children are reported asFAILED
.- Specified by:
executionFinished
in interfaceEngineExecutionListener
- Overrides:
executionFinished
in classDelegatingEngineExecutionListener
- Parameters:
testDescriptor
- the descriptor of the finished test or containerexecutionResult
- the (unaggregated) result of the execution for the suppliedTestDescriptor
- See Also:
TestExecutionResult
-
reportEngineOutcome
void reportEngineOutcome()
-
reportEngineFailure
void reportEngineFailure(java.lang.Throwable throwable)
-
-