|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Runner
Represents one run of a suite of tests.
The run represented by a Runner
has a lifecycle. The run begins when the
Runner
is instantiated by the framework and returned to the client during
a Framework.runner
invocation. The run continues until the client
invokes done
on the Runner
. Before invoking done
,
the client can invoke the tasks
method as many times at it wants, but once
done
has been invoked, the Runner
enters "spent" mode. Any
subsequent invocations of tasks
will be met with an
IllegalStateException
.
Method Summary | |
---|---|
java.lang.String[] |
args()
Returns thge arguments that were used to create this Runner . |
java.lang.String |
done()
Indicates the client is done with this Runner instance. |
java.lang.String[] |
remoteArgs()
Remote args that will be passed to Runner in a sub-process as remoteArgs. |
Task[] |
tasks(TaskDef[] taskDefs)
Returns an array of tasks that when executed will run tests and suites determined by the passed TaskDef s. |
Method Detail |
---|
Task[] tasks(TaskDef[] taskDefs)
TaskDef
s.
Each returned task, when executed, will run tests and suites determined by the
test class name, fingerprints, "explicitly specified" field, and selectors of one of the passed TaskDef
s.
This tasks
method may be called with TaskDef
s containing the same value for testClassName
but
different fingerprints. For example, if both a class and its companion object were test classes, the tasks
method could be
passed an array containing TaskDef
s with the same name but with a different value for fingerprint.isModule
.
A test framework may "reject" a requested task by returning no Task
for that TaskDef
.
taskDefs
- the TaskDef
s for requested tasks
Task
s
java.lang.IllegalStateException
- if invoked after done
has been invoked.java.lang.String done()
Runner
instance.
After invoking the done
method on a Runner
instance, the client should no
longer invoke the task
methods on that instance. (If the client does invoke task
after done
, it will be rewarded with an IllegalStateException
.)
Similarly, after returning from done
, the test framework should no longer write
any messages to the Logger
, nor fire any more events to the EventHandler
,
passed to Framework.runner
. If the test framework has not completed writing log messages
or firing events when the client invokes done
, the framework should not return from
done
until it is finished sending messages and events, and may block the thread
that invoked done
until it is actually done.
In short, by invoking done
, the client indicates it is done invoking the task
methods for this run. By returning from done
, the test framework indicates it is done writing
log messages and firing events for this run.
If the client invokes done
more than once on the same Runner
instance, the test
framework should on subsequent invocations should throw IllegalStateException
.
The test framework may send a summary (i.e., a message giving total tests succeeded, failed, and
so on) to the user via a log message. If so, it should return the summary from done
.
If not, it should return an empty string. The client may use the return value of done
to decide whether to display its own summary message.
The test framework may return a multi-lines string (i.e., a message giving total tests succeeded, failed and so on) to the client.
java.lang.String[] remoteArgs()
Runner
in a sub-process as remoteArgs.
Runner
in a sub-process as remoteArgs
.java.lang.String[] args()
Runner
.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |