Interface Node.DynamicTestExecutor

Enclosing interface:
Node<C extends EngineExecutionContext>

public static interface Node.DynamicTestExecutor
Executor for additional, dynamic test descriptors discovered during execution of a Node.

The test descriptors will be executed by the same HierarchicalTestExecutor that executes the submitting node.

This interface is not intended to be implemented by clients.

See Also:
Node.execute(EngineExecutionContext, DynamicTestExecutor), HierarchicalTestExecutor
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Block until all dynamic test descriptors submitted to this executor are finished.
    void
    execute​(TestDescriptor testDescriptor)
    Submit a dynamic test descriptor for immediate execution.
    execute​(TestDescriptor testDescriptor, EngineExecutionListener executionListener)
    Submit a dynamic test descriptor for immediate execution with a custom, potentially no-op, execution listener.
  • Method Details

    • execute

      void execute(TestDescriptor testDescriptor)
      Submit a dynamic test descriptor for immediate execution.
      Parameters:
      testDescriptor - the test descriptor to be executed; never null
    • execute

      @API(status=EXPERIMENTAL, since="5.7") Future<?> execute(TestDescriptor testDescriptor, EngineExecutionListener executionListener)
      Submit a dynamic test descriptor for immediate execution with a custom, potentially no-op, execution listener.
      Parameters:
      testDescriptor - the test descriptor to be executed; never null
      executionListener - the executionListener to be notified; never null
      Returns:
      a future to cancel or wait for the execution
      Since:
      5.7
      See Also:
      EngineExecutionListener.NOOP
    • awaitFinished

      void awaitFinished() throws InterruptedException
      Block until all dynamic test descriptors submitted to this executor are finished.

      This method is useful if the node needs to perform actions in its Node.execute(EngineExecutionContext, DynamicTestExecutor) method after all its dynamic children have finished.

      Throws:
      InterruptedException - if interrupted while waiting