--- jsr166/src/test/tck/AbstractQueuedLongSynchronizerTest.java 2014/12/31 19:05:42 1.29 +++ jsr166/src/test/tck/AbstractQueuedLongSynchronizerTest.java 2015/07/03 01:56:38 1.35 @@ -21,7 +21,7 @@ import junit.framework.TestSuite; public class AbstractQueuedLongSynchronizerTest extends JSR166TestCase { public static void main(String[] args) { - junit.textui.TestRunner.run(suite()); + main(suite(), args); } public static Test suite() { return new TestSuite(AbstractQueuedLongSynchronizerTest.class); @@ -94,7 +94,7 @@ public class AbstractQueuedLongSynchroni } public boolean tryReleaseShared(long ignore) { - setState(1 << 62); + setState(1L << 62); return true; } } @@ -202,7 +202,7 @@ public class AbstractQueuedLongSynchroni new HashSet(Arrays.asList(threads))); } - enum AwaitMethod { await, awaitTimed, awaitNanos, awaitUntil }; + enum AwaitMethod { await, awaitTimed, awaitNanos, awaitUntil } /** * Awaits condition using the specified AwaitMethod. @@ -225,6 +225,8 @@ public class AbstractQueuedLongSynchroni case awaitUntil: assertTrue(c.awaitUntil(delayedDate(timeoutMillis))); break; + default: + throw new AssertionError(); } } @@ -244,6 +246,7 @@ public class AbstractQueuedLongSynchroni long nanosTimeout = MILLISECONDS.toNanos(timeoutMillis); long nanosRemaining = c.awaitNanos(nanosTimeout); assertTrue(nanosRemaining <= 0); + assertTrue(nanosRemaining > -MILLISECONDS.toNanos(LONG_DELAY_MS)); break; case awaitUntil: assertFalse(c.awaitUntil(delayedDate(timeoutMillis))); @@ -1195,7 +1198,6 @@ public class AbstractQueuedLongSynchroni public void testTryAcquireSharedNanos_Timeout() { final BooleanLatch l = new BooleanLatch(); final BooleanLatch observedQueued = new BooleanLatch(); - final long timeoutMillis = timeoutMillis(); Thread t = newStartedThread(new CheckedRunnable() { public void realRun() throws InterruptedException { assertFalse(l.isSignalled());