summaryrefslogtreecommitdiff
path: root/jsr166-tests
diff options
context:
space:
mode:
authorHiroshi Yamauchi <yamauchi@google.com>2016-01-05 17:53:01 -0800
committerHiroshi Yamauchi <yamauchi@google.com>2016-01-05 18:07:11 -0800
commit12b0b5bff9ecb10177ba7fa5e31248f986ad9a42 (patch)
tree39253aa976b7804439ed553efa4d5788ffea5dcf /jsr166-tests
parent6573c148504641e5de93278470e2d5bd53bdd02c (diff)
Temporarily wait without timeouts in two jsr166 tests for debugging.
To help figure out whether a locally non-reproducible but buildbot-reproducible test failure is a timeout issue or something else, change the wait code to wait without timeouts in testWaitingConsumer and testTransfer2. This is a temporary change for a debugging purpose and to be reverted. This shouldn't affect the effectiveness of the tests because the test code assumes timeouts mean test failures. Bug: 25883050 Bug: 12687968 Change-Id: Iffd0377de5a416a308233e8b3cc345a83bdc406a
Diffstat (limited to 'jsr166-tests')
-rw-r--r--jsr166-tests/src/test/java/jsr166/JSR166TestCase.java13
-rw-r--r--jsr166-tests/src/test/java/jsr166/LinkedTransferQueueTest.java6
2 files changed, 17 insertions, 2 deletions
diff --git a/jsr166-tests/src/test/java/jsr166/JSR166TestCase.java b/jsr166-tests/src/test/java/jsr166/JSR166TestCase.java
index 61fa66dc6f..46be906c0c 100644
--- a/jsr166-tests/src/test/java/jsr166/JSR166TestCase.java
+++ b/jsr166-tests/src/test/java/jsr166/JSR166TestCase.java
@@ -648,6 +648,19 @@ public class JSR166TestCase extends TestCase {
waitForThreadToEnterWaitState(thread, LONG_DELAY_MS);
}
+ void waitForThreadToEnterWaitStateNoTimeout(Thread thread) {
+ for (;;) {
+ Thread.State s = thread.getState();
+ if (s == Thread.State.BLOCKED ||
+ s == Thread.State.WAITING ||
+ s == Thread.State.TIMED_WAITING)
+ return;
+ else if (s == Thread.State.TERMINATED)
+ fail("Unexpected thread termination");
+ Thread.yield();
+ }
+ }
+
/**
* Returns the number of milliseconds since time given by
* startNanoTime, which must have been previously returned from a
diff --git a/jsr166-tests/src/test/java/jsr166/LinkedTransferQueueTest.java b/jsr166-tests/src/test/java/jsr166/LinkedTransferQueueTest.java
index f5893eca94..8d3f276e01 100644
--- a/jsr166-tests/src/test/java/jsr166/LinkedTransferQueueTest.java
+++ b/jsr166-tests/src/test/java/jsr166/LinkedTransferQueueTest.java
@@ -742,7 +742,8 @@ public class LinkedTransferQueueTest extends BlockingQueueTest {
}});
threadStarted.await();
- waitForThreadToEnterWaitState(t, SMALL_DELAY_MS);
+ // waitForThreadToEnterWaitState(t, SMALL_DELAY_MS);
+ waitForThreadToEnterWaitStateNoTimeout(t);
assertEquals(1, q.getWaitingConsumerCount());
assertTrue(q.hasWaitingConsumer());
@@ -781,7 +782,8 @@ public class LinkedTransferQueueTest extends BlockingQueueTest {
}});
threadStarted.await();
- waitForThreadToEnterWaitState(t, SMALL_DELAY_MS);
+ // waitForThreadToEnterWaitState(t, SMALL_DELAY_MS);
+ waitForThreadToEnterWaitStateNoTimeout(t);
assertEquals(1, q.size());
assertSame(five, q.poll());
checkEmpty(q);