class DefaultLauncher extends java.lang.Object implements Launcher
Launcher
API.
External clients can obtain an instance by invoking
LauncherFactory.create()
.
Launcher
,
LauncherFactory
Modifier and Type | Field and Description |
---|---|
private EngineDiscoveryResultValidator |
discoveryResultValidator |
private TestExecutionListenerRegistry |
listenerRegistry |
private static Logger |
logger |
private java.lang.Iterable<TestEngine> |
testEngines |
Constructor and Description |
---|
DefaultLauncher(java.lang.Iterable<TestEngine> testEngines)
Construct a new
DefaultLauncher with the supplied test engines. |
Modifier and Type | Method and Description |
---|---|
private TestExecutionListenerRegistry |
buildListenerRegistryForExecution(TestExecutionListener... listeners) |
TestPlan |
discover(LauncherDiscoveryRequest discoveryRequest)
Discover tests and build a
TestPlan according to the supplied
LauncherDiscoveryRequest by querying all registered engines and
collecting their results. |
private java.util.Optional<TestDescriptor> |
discoverEngineRoot(TestEngine testEngine,
LauncherDiscoveryRequest discoveryRequest) |
private Root |
discoverRoot(LauncherDiscoveryRequest discoveryRequest,
java.lang.String phase) |
private void |
execute(InternalTestPlan internalTestPlan,
TestExecutionListener[] listeners) |
void |
execute(LauncherDiscoveryRequest discoveryRequest,
TestExecutionListener... listeners)
Execute a
TestPlan which is built according to the supplied
LauncherDiscoveryRequest by querying all registered engines and
collecting their results, and notify
registered listeners about
the progress and results of the execution. |
private void |
execute(TestEngine testEngine,
ExecutionRequest executionRequest) |
void |
execute(TestPlan testPlan,
TestExecutionListener... listeners)
Execute the supplied
TestPlan and notify
registered listeners about
the progress and results of the execution. |
(package private) TestExecutionListenerRegistry |
getTestExecutionListenerRegistry() |
private void |
handleThrowable(TestEngine testEngine,
java.lang.String phase,
java.lang.Throwable throwable) |
void |
registerTestExecutionListeners(TestExecutionListener... listeners)
Register one or more listeners for test execution.
|
private static java.lang.Iterable<TestEngine> |
validateEngineIds(java.lang.Iterable<TestEngine> testEngines) |
private static boolean |
validateReservedIds(TestEngine testEngine) |
private static void |
validateWellKnownClassName(TestEngine testEngine,
java.lang.String expectedClassName) |
private void |
withInterceptedStreams(ConfigurationParameters configurationParameters,
TestExecutionListenerRegistry listenerRegistry,
java.util.function.Consumer<TestExecutionListener> action) |
private static final Logger logger
private final TestExecutionListenerRegistry listenerRegistry
private final EngineDiscoveryResultValidator discoveryResultValidator
private final java.lang.Iterable<TestEngine> testEngines
DefaultLauncher(java.lang.Iterable<TestEngine> testEngines)
DefaultLauncher
with the supplied test engines.testEngines
- the test engines to delegate to; never null
or emptyprivate static java.lang.Iterable<TestEngine> validateEngineIds(java.lang.Iterable<TestEngine> testEngines)
private static boolean validateReservedIds(TestEngine testEngine)
private static void validateWellKnownClassName(TestEngine testEngine, java.lang.String expectedClassName)
public void registerTestExecutionListeners(TestExecutionListener... listeners)
Launcher
registerTestExecutionListeners
in interface Launcher
listeners
- the listeners to be notified of test execution events;
never null
or emptypublic TestPlan discover(LauncherDiscoveryRequest discoveryRequest)
Launcher
TestPlan
according to the supplied
LauncherDiscoveryRequest
by querying all registered engines and
collecting their results.discover
in interface Launcher
discoveryRequest
- the launcher discovery request; never
null
TestPlan
that contains all resolved
identifiers from all registered enginespublic void execute(LauncherDiscoveryRequest discoveryRequest, TestExecutionListener... listeners)
Launcher
TestPlan
which is built according to the supplied
LauncherDiscoveryRequest
by querying all registered engines and
collecting their results, and notify
registered listeners about
the progress and results of the execution.
Supplied test execution listeners are registered in addition to already registered listeners but only for the supplied launcher discovery request.
public void execute(TestPlan testPlan, TestExecutionListener... listeners)
Launcher
TestPlan
and notify
registered listeners about
the progress and results of the execution.
Supplied test execution listeners are registered in addition to already registered listeners but only for the execution of the supplied test plan.
TestExecutionListenerRegistry getTestExecutionListenerRegistry()
private Root discoverRoot(LauncherDiscoveryRequest discoveryRequest, java.lang.String phase)
private java.util.Optional<TestDescriptor> discoverEngineRoot(TestEngine testEngine, LauncherDiscoveryRequest discoveryRequest)
private void execute(InternalTestPlan internalTestPlan, TestExecutionListener[] listeners)
private void withInterceptedStreams(ConfigurationParameters configurationParameters, TestExecutionListenerRegistry listenerRegistry, java.util.function.Consumer<TestExecutionListener> action)
private TestExecutionListenerRegistry buildListenerRegistryForExecution(TestExecutionListener... listeners)
private void execute(TestEngine testEngine, ExecutionRequest executionRequest)
private void handleThrowable(TestEngine testEngine, java.lang.String phase, java.lang.Throwable throwable)