# HG changeset patch # User dl # Parent c8d5737c1e475d4c6b1b0d2e18cf61e614f0e780 8207003: Miscellaneous changes imported from jsr166 CVS 2018-09 Reviewed-by: martin, chegar diff --git a/test/jdk/java/util/Collections/EmptyNavigableSet.java b/test/jdk/java/util/Collections/EmptyNavigableSet.java --- a/test/jdk/java/util/Collections/EmptyNavigableSet.java +++ b/test/jdk/java/util/Collections/EmptyNavigableSet.java @@ -45,6 +45,7 @@ import java.util.TreeSet; import static org.testng.Assert.assertFalse; +import static org.testng.Assert.assertNull; import static org.testng.Assert.assertSame; import static org.testng.Assert.assertTrue; @@ -369,7 +370,7 @@ assertSame(emptyNavigableSetArray, result); - assertTrue(result[0] == null); + assertNull(result[0]); } @DataProvider(name = "NavigableSet", parallel = true) diff --git a/test/jdk/java/util/PriorityQueue/AddNonComparable.java b/test/jdk/java/util/PriorityQueue/AddNonComparable.java --- a/test/jdk/java/util/PriorityQueue/AddNonComparable.java +++ b/test/jdk/java/util/PriorityQueue/AddNonComparable.java @@ -42,6 +42,7 @@ import java.util.function.Supplier; import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertNull; import static org.testng.Assert.assertTrue; public class AddNonComparable { @@ -64,7 +65,7 @@ test(new PriorityQueue<>(), AComparable::new, (q, e) -> { assertEquals(q.size(), 1); - assertTrue(e == null); + assertNull(e); }); test(new PriorityBlockingQueue<>(), NonComparable::new, @@ -75,7 +76,7 @@ test(new PriorityBlockingQueue<>(), AComparable::new, (q, e) -> { assertEquals(q.size(), 1); - assertTrue(e == null); + assertNull(e); }); } @@ -98,7 +99,7 @@ test(new TreeSet<>(), AComparable::new, (s, e) -> { assertEquals(s.size(), 1); - assertTrue(e == null); + assertNull(e); }); test(new ConcurrentSkipListSet<>(), NonComparable::new, @@ -109,7 +110,7 @@ test(new ConcurrentSkipListSet<>(), AComparable::new, (s, e) -> { assertEquals(s.size(), 1); - assertTrue(e == null); + assertNull(e); }); } @@ -131,7 +132,7 @@ test(new TreeMap<>(), AComparable::new, (m, e) -> { assertEquals(m.size(), 1); - assertTrue(e == null); + assertNull(e); }); test(new ConcurrentSkipListMap<>(), NonComparable::new, @@ -142,7 +143,7 @@ test(new ConcurrentSkipListMap<>(), AComparable::new, (s, e) -> { assertEquals(s.size(), 1); - assertTrue(e == null); + assertNull(e); }); } diff --git a/test/jdk/java/util/concurrent/tck/AbstractQueuedSynchronizerTest.java b/test/jdk/java/util/concurrent/tck/AbstractQueuedSynchronizerTest.java --- a/test/jdk/java/util/concurrent/tck/AbstractQueuedSynchronizerTest.java +++ b/test/jdk/java/util/concurrent/tck/AbstractQueuedSynchronizerTest.java @@ -1310,7 +1310,7 @@ try { s.acquireInterruptibly(1); shouldThrow(); - } catch (InterruptedException expected) {} + } catch (InterruptedException success) {} }; for (int i = 0; i < 2; i++) { Thread thread = new Thread(failedAcquire); diff --git a/test/jdk/java/util/concurrent/tck/CountedCompleterTest.java b/test/jdk/java/util/concurrent/tck/CountedCompleterTest.java --- a/test/jdk/java/util/concurrent/tck/CountedCompleterTest.java +++ b/test/jdk/java/util/concurrent/tck/CountedCompleterTest.java @@ -135,10 +135,14 @@ assertFalse(a.cancel(false)); assertFalse(a.cancel(true)); + + Object v1 = null, v2 = null; try { - assertNull(a.get()); - assertNull(a.get(randomTimeout(), randomTimeUnit())); + v1 = a.get(); + v2 = a.get(randomTimeout(), randomTimeUnit()); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertNull(v1); + assertNull(v2); } void checkCancelled(CountedCompleter a) { diff --git a/test/jdk/java/util/concurrent/tck/DelayQueueTest.java b/test/jdk/java/util/concurrent/tck/DelayQueueTest.java --- a/test/jdk/java/util/concurrent/tck/DelayQueueTest.java +++ b/test/jdk/java/util/concurrent/tck/DelayQueueTest.java @@ -96,7 +96,7 @@ // suppress [overrides] javac warning public int hashCode() { return pseudodelay; } public long getDelay(TimeUnit ignore) { - return Integer.MIN_VALUE + pseudodelay; + return (long) Integer.MIN_VALUE + pseudodelay; } public String toString() { return String.valueOf(pseudodelay); diff --git a/test/jdk/java/util/concurrent/tck/ForkJoinPool8Test.java b/test/jdk/java/util/concurrent/tck/ForkJoinPool8Test.java --- a/test/jdk/java/util/concurrent/tck/ForkJoinPool8Test.java +++ b/test/jdk/java/util/concurrent/tck/ForkJoinPool8Test.java @@ -133,10 +133,14 @@ assertNull(a.join()); assertFalse(a.cancel(false)); assertFalse(a.cancel(true)); + + Object v1 = null, v2 = null; try { - assertNull(a.get()); - assertNull(a.get(randomTimeout(), randomTimeUnit())); + v1 = a.get(); + v2 = a.get(randomTimeout(), randomTimeUnit()); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertNull(v1); + assertNull(v2); } void checkCancelled(ForkJoinTask a) { diff --git a/test/jdk/java/util/concurrent/tck/ForkJoinTask8Test.java b/test/jdk/java/util/concurrent/tck/ForkJoinTask8Test.java --- a/test/jdk/java/util/concurrent/tck/ForkJoinTask8Test.java +++ b/test/jdk/java/util/concurrent/tck/ForkJoinTask8Test.java @@ -140,13 +140,13 @@ checkCompletedNormally(a, null); } - void checkCompletedNormally(ForkJoinTask a, T expected) { + void checkCompletedNormally(ForkJoinTask a, T expectedValue) { assertTrue(a.isDone()); assertFalse(a.isCancelled()); assertTrue(a.isCompletedNormally()); assertFalse(a.isCompletedAbnormally()); assertNull(a.getException()); - assertSame(expected, a.getRawResult()); + assertSame(expectedValue, a.getRawResult()); if (a instanceof BinaryAsyncAction) assertEquals(COMPLETE_STATE, ((BinaryAsyncAction)a).getForkJoinTaskTag()); @@ -154,7 +154,7 @@ { Thread.currentThread().interrupt(); long startTime = System.nanoTime(); - assertSame(expected, a.join()); + assertSame(expectedValue, a.join()); assertTrue(millisElapsedSince(startTime) < LONG_DELAY_MS); Thread.interrupted(); } @@ -169,10 +169,14 @@ assertFalse(a.cancel(false)); assertFalse(a.cancel(true)); + + T v1 = null, v2 = null; try { - assertSame(expected, a.get()); - assertSame(expected, a.get(randomTimeout(), randomTimeUnit())); + v1 = a.get(); + v2 = a.get(randomTimeout(), randomTimeUnit()); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertSame(expectedValue, v1); + assertSame(expectedValue, v2); } void checkCompletedAbnormally(ForkJoinTask a, Throwable t) { diff --git a/test/jdk/java/util/concurrent/tck/ForkJoinTaskTest.java b/test/jdk/java/util/concurrent/tck/ForkJoinTaskTest.java --- a/test/jdk/java/util/concurrent/tck/ForkJoinTaskTest.java +++ b/test/jdk/java/util/concurrent/tck/ForkJoinTaskTest.java @@ -114,18 +114,18 @@ checkCompletedNormally(a, null); } - void checkCompletedNormally(ForkJoinTask a, T expected) { + void checkCompletedNormally(ForkJoinTask a, T expectedValue) { assertTrue(a.isDone()); assertFalse(a.isCancelled()); assertTrue(a.isCompletedNormally()); assertFalse(a.isCompletedAbnormally()); assertNull(a.getException()); - assertSame(expected, a.getRawResult()); + assertSame(expectedValue, a.getRawResult()); { Thread.currentThread().interrupt(); long startTime = System.nanoTime(); - assertSame(expected, a.join()); + assertSame(expectedValue, a.join()); assertTrue(millisElapsedSince(startTime) < LONG_DELAY_MS); Thread.interrupted(); } @@ -140,10 +140,14 @@ assertFalse(a.cancel(false)); assertFalse(a.cancel(true)); + + T v1 = null, v2 = null; try { - assertSame(expected, a.get()); - assertSame(expected, a.get(randomTimeout(), randomTimeUnit())); + v1 = a.get(); + v2 = a.get(randomTimeout(), randomTimeUnit()); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertSame(expectedValue, v1); + assertSame(expectedValue, v2); } void checkCancelled(ForkJoinTask a) { diff --git a/test/jdk/java/util/concurrent/tck/FutureTaskTest.java b/test/jdk/java/util/concurrent/tck/FutureTaskTest.java --- a/test/jdk/java/util/concurrent/tck/FutureTaskTest.java +++ b/test/jdk/java/util/concurrent/tck/FutureTaskTest.java @@ -87,8 +87,9 @@ pf.run(); pf.runAndReset(); assertEquals(savedRunCount, pf.runCount()); + Object r2 = null; try { - assertSame(r, f.get()); + r2 = f.get(); } catch (CancellationException t) { assertSame(exInfo, CancellationException.class); } catch (ExecutionException t) { @@ -96,6 +97,8 @@ } catch (Throwable t) { threadUnexpectedException(t); } + if (exInfo == null) + assertSame(r, r2); assertTrue(f.isDone()); } } @@ -128,14 +131,17 @@ } } - void checkCompletedNormally(Future f, T expected) { + void checkCompletedNormally(Future f, T expectedValue) { checkIsDone(f); assertFalse(f.isCancelled()); + T v1 = null, v2 = null; try { - assertSame(expected, f.get()); - assertSame(expected, f.get(randomTimeout(), randomTimeUnit())); + v1 = f.get(); + v2 = f.get(randomTimeout(), randomTimeUnit()); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertSame(expectedValue, v1); + assertSame(expectedValue, v2); } void checkCancelled(Future f) { @@ -485,7 +491,7 @@ try { task.cancel(true); shouldThrow(); - } catch (SecurityException expected) {} + } catch (SecurityException success) {} // We failed to deliver the interrupt, but the world retains // its sanity, as if we had done task.cancel(false) diff --git a/test/jdk/java/util/concurrent/tck/JSR166TestCase.java b/test/jdk/java/util/concurrent/tck/JSR166TestCase.java --- a/test/jdk/java/util/concurrent/tck/JSR166TestCase.java +++ b/test/jdk/java/util/concurrent/tck/JSR166TestCase.java @@ -1415,9 +1415,11 @@ */ void checkTimedGet(Future f, T expectedValue, long timeoutMillis) { long startTime = System.nanoTime(); + T actual = null; try { - assertEquals(expectedValue, f.get(timeoutMillis, MILLISECONDS)); + actual = f.get(timeoutMillis, MILLISECONDS); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertEquals(expectedValue, actual); if (millisElapsedSince(startTime) > timeoutMillis/2) throw new AssertionError("timed get did not return promptly"); } @@ -1596,13 +1598,15 @@ } public void await(CountDownLatch latch, long timeoutMillis) { + boolean timedOut = false; try { - if (!latch.await(timeoutMillis, MILLISECONDS)) - fail("timed out waiting for CountDownLatch for " - + (timeoutMillis/1000) + " sec"); + timedOut = !latch.await(timeoutMillis, MILLISECONDS); } catch (Throwable fail) { threadUnexpectedException(fail); } + if (timedOut) + fail("timed out waiting for CountDownLatch for " + + (timeoutMillis/1000) + " sec"); } public void await(CountDownLatch latch) { @@ -1610,13 +1614,15 @@ } public void await(Semaphore semaphore) { + boolean timedOut = false; try { - if (!semaphore.tryAcquire(LONG_DELAY_MS, MILLISECONDS)) - fail("timed out waiting for Semaphore for " - + (LONG_DELAY_MS/1000) + " sec"); + timedOut = !semaphore.tryAcquire(LONG_DELAY_MS, MILLISECONDS); } catch (Throwable fail) { threadUnexpectedException(fail); } + if (timedOut) + fail("timed out waiting for Semaphore for " + + (LONG_DELAY_MS/1000) + " sec"); } public void await(CyclicBarrier barrier) { @@ -1802,17 +1808,17 @@ @SuppressWarnings("unchecked") T serialClone(T o) { + T clone = null; try { ObjectInputStream ois = new ObjectInputStream (new ByteArrayInputStream(serialBytes(o))); - T clone = (T) ois.readObject(); - if (o == clone) assertImmutable(o); - assertSame(o.getClass(), clone.getClass()); - return clone; + clone = (T) ois.readObject(); } catch (Throwable fail) { threadUnexpectedException(fail); - return null; } + if (o == clone) assertImmutable(o); + else assertSame(o.getClass(), clone.getClass()); + return clone; } /** @@ -1831,7 +1837,7 @@ (new ByteArrayInputStream(bos.toByteArray())); T clone = (T) ois.readObject(); if (o == clone) assertImmutable(o); - assertSame(o.getClass(), clone.getClass()); + else assertSame(o.getClass(), clone.getClass()); return clone; } diff --git a/test/jdk/java/util/concurrent/tck/RecursiveActionTest.java b/test/jdk/java/util/concurrent/tck/RecursiveActionTest.java --- a/test/jdk/java/util/concurrent/tck/RecursiveActionTest.java +++ b/test/jdk/java/util/concurrent/tck/RecursiveActionTest.java @@ -123,10 +123,14 @@ assertNull(a.join()); assertFalse(a.cancel(false)); assertFalse(a.cancel(true)); + + Object v1 = null, v2 = null; try { - assertNull(a.get()); - assertNull(a.get(randomTimeout(), randomTimeUnit())); + v1 = a.get(); + v2 = a.get(randomTimeout(), randomTimeUnit()); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertNull(v1); + assertNull(v2); } void checkCancelled(RecursiveAction a) { diff --git a/test/jdk/java/util/concurrent/tck/RecursiveTaskTest.java b/test/jdk/java/util/concurrent/tck/RecursiveTaskTest.java --- a/test/jdk/java/util/concurrent/tck/RecursiveTaskTest.java +++ b/test/jdk/java/util/concurrent/tck/RecursiveTaskTest.java @@ -109,29 +109,33 @@ } catch (Throwable fail) { threadUnexpectedException(fail); } } - void checkCompletedNormally(RecursiveTask a, T expected) { + void checkCompletedNormally(RecursiveTask a, T expectedValue) { assertTrue(a.isDone()); assertFalse(a.isCancelled()); assertTrue(a.isCompletedNormally()); assertFalse(a.isCompletedAbnormally()); assertNull(a.getException()); - assertSame(expected, a.getRawResult()); - assertSame(expected, a.join()); + assertSame(expectedValue, a.getRawResult()); + assertSame(expectedValue, a.join()); assertFalse(a.cancel(false)); assertFalse(a.cancel(true)); + + T v1 = null, v2 = null; try { - assertSame(expected, a.get()); - assertSame(expected, a.get(randomTimeout(), randomTimeUnit())); + v1 = a.get(); + v2 = a.get(randomTimeout(), randomTimeUnit()); } catch (Throwable fail) { threadUnexpectedException(fail); } + assertSame(expectedValue, v1); + assertSame(expectedValue, v2); } /** * Waits for the task to complete, and checks that when it does, * it will have an Integer result equals to the given int. */ - void checkCompletesNormally(RecursiveTask a, int expected) { + void checkCompletesNormally(RecursiveTask a, int expectedValue) { Integer r = a.join(); - assertEquals(expected, (int) r); + assertEquals(expectedValue, (int) r); checkCompletedNormally(a, r); } @@ -139,9 +143,9 @@ * Like checkCompletesNormally, but verifies that the task has * already completed. */ - void checkCompletedNormally(RecursiveTask a, int expected) { + void checkCompletedNormally(RecursiveTask a, int expectedValue) { Integer r = a.getRawResult(); - assertEquals(expected, (int) r); + assertEquals(expectedValue, (int) r); checkCompletedNormally(a, r); } diff --git a/test/jdk/java/util/concurrent/tck/ReentrantLockTest.java b/test/jdk/java/util/concurrent/tck/ReentrantLockTest.java --- a/test/jdk/java/util/concurrent/tck/ReentrantLockTest.java +++ b/test/jdk/java/util/concurrent/tck/ReentrantLockTest.java @@ -1187,7 +1187,7 @@ await(cond, awaitMethod); throw new AssertionError("should throw"); } - catch (IllegalMonitorStateException expected) {} + catch (IllegalMonitorStateException success) {} catch (Throwable fail) { threadUnexpectedException(fail); }}}; Thread rogueThread = new Thread(rogue, "rogue"); threads.add(rogueThread); diff --git a/test/jdk/java/util/concurrent/tck/SubmissionPublisherTest.java b/test/jdk/java/util/concurrent/tck/SubmissionPublisherTest.java --- a/test/jdk/java/util/concurrent/tck/SubmissionPublisherTest.java +++ b/test/jdk/java/util/concurrent/tck/SubmissionPublisherTest.java @@ -1029,7 +1029,9 @@ public void onComplete() {} } pub.subscribe(new Sub()); - CompletableFuture.runAsync(() -> pub.submit(Boolean.TRUE)); + checkTimedGet( + CompletableFuture.runAsync(() -> pub.submit(Boolean.TRUE)), + null); await(finished); } }