Distributor
Trait whose instances facilitate parallel execution of Suite
s.
An optional Distributor
is passed to the run
method of Suite
. If a
Distributor
is indeed passed, trait Suite
's implementation of run
will
populate that Distributor
with its nested Suite
s (by passing them to the Distributor
's
apply
method) rather than executing the nested Suite
s directly. It is then up to another thread or process
to execute those Suite
s.
If you have a set of nested Suite
s that must be executed sequentially, you can mix in trait
SequentialNestedSuiteExecution
, which overrides runNestedSuites
and
calls super
's runNestedSuites
implementation, passing in None
for the
Distributor
.
Implementations of this trait must be thread safe.
Value members
Abstract methods
Puts a Suite
into the Distributor
.
Puts a Suite
into the Distributor
.
The Distributor
can decide which, if any, of the passed Args</code
to pass to the
Suite
's apply method. For example, a Distributor
may pass itself wrapped in a Some
in the Args
it passes to the Suite
's run
method instead of the args.distributor
value.
- Value parameters:
- args
a
Args
containing objects that may be passed to theSuite
'srun
method via aArgs
instance.- suite
the
Suite
to put into theDistributor
.
- Throws:
- NullArgumentException
if either
suite
ortracker
isnull
.