Represents a plan that can be controlled from the tests.
Most importantly this class allows you to trigger a build that waits
for another signal from the test before completing. This allows
the test to perform actions while the build is running
and then complete the build exactly when required.
Starts a build using the backdoor API. The build will not complete until the "complete" method
is called or until the specified timeout elapses, whichever happens sooner.
If the timeout elapses the build will fail.
public void complete()
This method should be called after "start()" to complete the build in progress.
If this method is called before the build times out then the build
will immediately complete with a successful result.
This method just sends an asynchronous signal to the build that it should complete,
it does not actually wait for the build to complete before returning. You should
not attempt to start another build until the first build has actually completed.
public void delete()
Deletes the plan using the backdoor API. The ControllablePlan instance
should be discarded after calling this method.