Interface Node<C extends EngineExecutionContext>
- Type Parameters:
C- the type ofEngineExecutionContextused by theHierarchicalTestEngine
- All Known Implementing Classes:
ClassBasedTestDescriptor,ClassTestDescriptor,JupiterEngineDescriptor,JupiterTestDescriptor,MethodBasedTestDescriptor,NestedClassTestDescriptor,TestFactoryTestDescriptor,TestMethodTestDescriptor,TestTemplateInvocationTestDescriptor,TestTemplateTestDescriptor
- Since:
- 1.0
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceExecutor for additional, dynamic test descriptors discovered during execution of aNode.static enumSupported execution modes for parallel execution.static interfaceNode.Invocation<C extends EngineExecutionContext>Represents an invocation that runs with the supplied context.static classThe result of determining whether the execution of a givencontextshould be skipped. -
Method Summary
Modifier and TypeMethodDescriptiondefault voidExecute the after behavior of this node.default voidaround(C context, Node.Invocation<C> invocation) Wraps around the invocation ofbefore(EngineExecutionContext),execute(EngineExecutionContext, DynamicTestExecutor), andafter(EngineExecutionContext).default CExecute the before behavior of this node.default voidClean up the suppliedcontextafter execution.default Cexecute(C context, Node.DynamicTestExecutor dynamicTestExecutor) Execute the behavior of this node.default Set<ExclusiveResource>Get the set of exclusive resources required to execute this node.default Node.ExecutionModeGet the preferred of execution mode for parallel execution of this node.default voidnodeFinished(C context, TestDescriptor testDescriptor, TestExecutionResult result) Callback invoked when the execution of this node has finished.default voidnodeSkipped(C context, TestDescriptor testDescriptor, Node.SkipResult result) Callback invoked when the execution of this node has been skipped.default CPrepare the suppliedcontextprior to execution.default Node.SkipResultshouldBeSkipped(C context) Determine if the execution of the suppliedcontextshould be skipped.
-
Method Details
-
prepare
Prepare the suppliedcontextprior to execution.The default implementation returns the supplied
contextunmodified.- Throws:
Exception- See Also:
-
cleanUp
Clean up the suppliedcontextafter execution.The default implementation does nothing.
- Parameters:
context- the context to execute in- Throws:
Exception- Since:
- 1.1
- See Also:
-
shouldBeSkipped
Determine if the execution of the suppliedcontextshould be skipped.The default implementation returns
Node.SkipResult.doNotSkip().- Throws:
Exception
-
before
Execute the before behavior of this node.This method will be called once before execution of this node.
The default implementation returns the supplied
contextunmodified.- Parameters:
context- the context to execute in- Returns:
- the new context to be used for children of this node; never
null - Throws:
Exception- See Also:
-
execute
Execute the behavior of this node.Containers typically do not implement this method since the
HierarchicalTestEnginehandles execution of their children.The supplied
dynamicTestExecutormay be used to submit additional dynamic tests for immediate execution.The default implementation returns the supplied
contextunmodified. -
after
Execute the after behavior of this node.This method will be called once after execution of this node.
The default implementation does nothing.
- Parameters:
context- the context to execute in- Throws:
Exception- See Also:
-
around
@API(status=EXPERIMENTAL, since="1.4") default void around(C context, Node.Invocation<C> invocation) throws Exception Wraps around the invocation ofbefore(EngineExecutionContext),execute(EngineExecutionContext, DynamicTestExecutor), andafter(EngineExecutionContext).- Parameters:
context- context the context to execute ininvocation- the wrapped invocation (must be invoked exactly once)- Throws:
Exception- Since:
- 1.4
-
nodeSkipped
@API(status=EXPERIMENTAL, since="1.4", consumers="org.junit.platform.engine.support.hierarchical") default void nodeSkipped(C context, TestDescriptor testDescriptor, Node.SkipResult result) Callback invoked when the execution of this node has been skipped.The default implementation does nothing.
- Parameters:
context- the execution contexttestDescriptor- the test descriptor that was skippedresult- the result of skipped execution- Since:
- 1.4
-
nodeFinished
@API(status=EXPERIMENTAL, since="1.4", consumers="org.junit.platform.engine.support.hierarchical") default void nodeFinished(C context, TestDescriptor testDescriptor, TestExecutionResult result) Callback invoked when the execution of this node has finished.The default implementation does nothing.
- Parameters:
context- the execution contexttestDescriptor- the test descriptor that was executedresult- the result of the execution- Since:
- 1.4
-
getExclusiveResources
@API(status=EXPERIMENTAL, since="1.3", consumers="org.junit.platform.engine.support.hierarchical") default Set<ExclusiveResource> getExclusiveResources()Get the set of exclusive resources required to execute this node.The default implementation returns an empty set.
- Returns:
- the set of exclusive resources required by this node; never
nullbut potentially empty - Since:
- 1.3
- See Also:
-
getExecutionMode
@API(status=EXPERIMENTAL, since="1.3", consumers="org.junit.platform.engine.support.hierarchical") default Node.ExecutionMode getExecutionMode()Get the preferred of execution mode for parallel execution of this node.The default implementation returns
Node.ExecutionMode.CONCURRENT.- Returns:
- the preferred execution mode of this node; never
null - Since:
- 1.3
- See Also:
-