@Test public void removeRunnableTest() { KeyedSchedulerServiceLimiter limiter = makeLimiter(1); String key = StringUtils.makeRandomString(5); BlockingTestRunnable btr = new BlockingTestRunnable(); try { assertFalse(limiter.remove(btr)); assertFalse(limiter.remove((Runnable)null)); limiter.execute(key, btr); TestRunnable tr = new TestRunnable(); assertFalse(limiter.remove(tr)); limiter.execute(key, tr); assertTrue(limiter.remove(tr)); assertFalse(limiter.remove(tr)); limiter.submit(key, tr); assertTrue(limiter.remove(tr)); assertFalse(limiter.remove(tr)); } finally { btr.unblock(); } }
@Test public void removeCallableTest() { KeyedSchedulerServiceLimiter limiter = makeLimiter(1); String key = StringUtils.makeRandomString(5); BlockingTestRunnable btr = new BlockingTestRunnable(); try { assertFalse(limiter.remove(btr)); assertFalse(limiter.remove((Runnable)null)); limiter.execute(key, btr); TestCallable tc = new TestCallable(); assertFalse(limiter.remove(tc)); limiter.submit(key, tc); assertTrue(limiter.remove(tc)); assertFalse(limiter.remove(tc)); } finally { btr.unblock(); } }