DefaultExecutor

Default execution for specifications:

  • concurrent by default
  • using steps for synchronisation points
Companion:
object
trait Executor
class Object
trait Matchable
class Any
object DefaultExecutor.type

Value members

Concrete methods

execute fragments:

execute fragments:

  • filter the ones that the user wants to keep
  • sequence the execution so that only parts in between steps are executed concurrently
def executeExecution(env: Env, timeout: Option[FiniteDuration])(execution: Execution): Execution

execute one Execution

execute one Execution

def executeFragment(env: Env, timeout: Option[FiniteDuration])(fragment: Fragment): Fragment

execute one fragment

execute one fragment

def executeOnline(env: Env)(fragment: Fragment): AsyncStream[Fragment]

execute fragments, making sure that:

execute fragments, making sure that:

  • "join" points are respected, i.e. when a Fragment is a join we must make sure that all previously executing fragments have finished their execution

  • the fragments execute sequentially when args.sequential

  • the execution stops if one fragment indicates that the result of the previous executions is not correct