/**
* Waits up to a timeout for a StatePredicate to become active. Fails the
* test if the timeout expires.
*/
public void waitUntil(StatePredicate predicate, long timeoutMs) throws InterruptedException {
waitUntil(predicate, new FixedTimeout(timeoutMs));
}