private void testNthSuccess(int n) throws Exception { CountCondition cond = new CountCondition(n); int intervalMs = 10; WaitForOptions opts = WaitForOptions.defaults().setInterval(intervalMs); long start = System.currentTimeMillis(); CommonUtils.waitFor("", cond, opts); long durationMs = System.currentTimeMillis() - start; assertThat((int) durationMs, Matchers.greaterThanOrEqualTo((n - 1) * intervalMs)); assertEquals(n, cond.invocations()); }
@Test(expected = TimeoutException.class) public void waitForTimeout() throws Exception { CountCondition cond = new CountCondition(100); WaitForOptions opts = WaitForOptions.defaults().setInterval(3).setTimeoutMs(100); CommonUtils.waitFor("", cond, opts); } }