Interruptor value defining a default interruption strategy for the
Executes the passed function, enforcing the passed time limit by attempting to interrupt the function if the
time limit is exceeded, and throwing
TestFailedDueToTimeoutException if the time limit has been
exceeded after the function completes.
the maximimum amount of time allowed for the passed operation
the operation on which to enforce the passed timeout
a strategy for interrupting the passed operation