--- jsr166/src/test/tck/DelayQueueTest.java 2017/01/03 07:29:30 1.80 +++ jsr166/src/test/tck/DelayQueueTest.java 2017/05/13 22:21:55 1.84 @@ -115,8 +115,8 @@ public class DelayQueueTest extends JSR1 * Returns a new queue of given size containing consecutive * PDelays 0 ... n - 1. */ - private DelayQueue populatedQueue(int n) { - DelayQueue q = new DelayQueue(); + private static DelayQueue populatedQueue(int n) { + DelayQueue q = new DelayQueue<>(); assertTrue(q.isEmpty()); for (int i = n - 1; i >= 0; i -= 2) assertTrue(q.offer(new PDelay(i))); @@ -338,9 +338,8 @@ public class DelayQueueTest extends JSR1 final CountDownLatch pleaseInterrupt = new CountDownLatch(1); Thread t = newStartedThread(new CheckedRunnable() { public void realRun() throws InterruptedException { - for (int i = 0; i < SIZE; ++i) { + for (int i = 0; i < SIZE; i++) assertEquals(new PDelay(i), ((PDelay)q.take())); - } Thread.currentThread().interrupt(); try { @@ -358,7 +357,7 @@ public class DelayQueueTest extends JSR1 }}); await(pleaseInterrupt); - assertThreadStaysAlive(t); + assertThreadBlocks(t, Thread.State.WAITING); t.interrupt(); awaitTermination(t); } @@ -674,7 +673,7 @@ public class DelayQueueTest extends JSR1 * Delayed actions do not occur until their delay elapses */ public void testDelay() throws InterruptedException { - DelayQueue q = new DelayQueue(); + DelayQueue q = new DelayQueue<>(); for (int i = 0; i < SIZE; ++i) q.add(new NanoDelay(1000000L * (SIZE - i))); @@ -714,7 +713,9 @@ public class DelayQueueTest extends JSR1 public void testTimedPollDelayed() throws InterruptedException { DelayQueue q = new DelayQueue(); q.add(new NanoDelay(LONG_DELAY_MS * 1000000L)); + long startTime = System.nanoTime(); assertNull(q.poll(timeoutMillis(), MILLISECONDS)); + assertTrue(millisElapsedSince(startTime) >= timeoutMillis()); } /**