BlockUntilRenderTimeoutException
Exception thrown when blockUntilRenderWhen times out.
We wrap the TimeoutCancellationException because this is an exception that we want to not get swallowed by the coroutine machinery. This way, if a test fails due to a timeout, we can see the stack trace and debug it.