[cvs] / jsr166 / src / test / tck / ArrayBlockingQueueTest.java Repository:
ViewVC logotype

Diff of /jsr166/src/test/tck/ArrayBlockingQueueTest.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.15, Sat Nov 21 02:07:26 2009 UTC revision 1.16, Sat Nov 21 02:33:20 2009 UTC
# Line 10  Line 10 
10  import junit.framework.*;  import junit.framework.*;
11  import java.util.*;  import java.util.*;
12  import java.util.concurrent.*;  import java.util.concurrent.*;
13    import static java.util.concurrent.TimeUnit.MILLISECONDS;
14  import java.io.*;  import java.io.*;
15    
16  public class ArrayBlockingQueueTest extends JSR166TestCase {  public class ArrayBlockingQueueTest extends JSR166TestCase {
# Line 389  Line 390 
390                      try {                      try {
391                          q.put(new Object());                          q.put(new Object());
392                          q.put(new Object());                          q.put(new Object());
393                          threadAssertFalse(q.offer(new Object(), SHORT_DELAY_MS/2, TimeUnit.MILLISECONDS));                          threadAssertFalse(q.offer(new Object(), SHORT_DELAY_MS/2, MILLISECONDS));
394                          q.offer(new Object(), LONG_DELAY_MS, TimeUnit.MILLISECONDS);                          q.offer(new Object(), LONG_DELAY_MS, MILLISECONDS);
395                          threadShouldThrow();                          threadShouldThrow();
396                      } catch (InterruptedException success) {}                      } catch (InterruptedException success) {}
397                  }                  }
# Line 489  Line 490 
490          try {          try {
491              ArrayBlockingQueue q = populatedQueue(SIZE);              ArrayBlockingQueue q = populatedQueue(SIZE);
492              for (int i = 0; i < SIZE; ++i) {              for (int i = 0; i < SIZE; ++i) {
493                  assertEquals(i, ((Integer)q.poll(0, TimeUnit.MILLISECONDS)).intValue());                  assertEquals(i, ((Integer)q.poll(0, MILLISECONDS)).intValue());
494              }              }
495              assertNull(q.poll(0, TimeUnit.MILLISECONDS));              assertNull(q.poll(0, MILLISECONDS));
496          } catch (InterruptedException e) {          } catch (InterruptedException e) {
497              unexpectedException();              unexpectedException();
498          }          }
# Line 504  Line 505 
505          try {          try {
506              ArrayBlockingQueue q = populatedQueue(SIZE);              ArrayBlockingQueue q = populatedQueue(SIZE);
507              for (int i = 0; i < SIZE; ++i) {              for (int i = 0; i < SIZE; ++i) {
508                  assertEquals(i, ((Integer)q.poll(SHORT_DELAY_MS, TimeUnit.MILLISECONDS)).intValue());                  assertEquals(i, ((Integer)q.poll(SHORT_DELAY_MS, MILLISECONDS)).intValue());
509              }              }
510              assertNull(q.poll(SHORT_DELAY_MS, TimeUnit.MILLISECONDS));              assertNull(q.poll(SHORT_DELAY_MS, MILLISECONDS));
511          } catch (InterruptedException e) {          } catch (InterruptedException e) {
512              unexpectedException();              unexpectedException();
513          }          }
# Line 522  Line 523 
523                      try {                      try {
524                          ArrayBlockingQueue q = populatedQueue(SIZE);                          ArrayBlockingQueue q = populatedQueue(SIZE);
525                          for (int i = 0; i < SIZE; ++i) {                          for (int i = 0; i < SIZE; ++i) {
526                              threadAssertEquals(i, ((Integer)q.poll(SHORT_DELAY_MS, TimeUnit.MILLISECONDS)).intValue());                              threadAssertEquals(i, ((Integer)q.poll(SHORT_DELAY_MS, MILLISECONDS)).intValue());
527                          }                          }
528                          threadAssertNull(q.poll(SHORT_DELAY_MS, TimeUnit.MILLISECONDS));                          threadAssertNull(q.poll(SHORT_DELAY_MS, MILLISECONDS));
529                      } catch (InterruptedException success) {                      } catch (InterruptedException success) {
530                      }                      }
531                  }});                  }});
# Line 548  Line 549 
549          Thread t = new Thread(new Runnable() {          Thread t = new Thread(new Runnable() {
550                  public void run() {                  public void run() {
551                      try {                      try {
552                          threadAssertNull(q.poll(SHORT_DELAY_MS, TimeUnit.MILLISECONDS));                          threadAssertNull(q.poll(SHORT_DELAY_MS, MILLISECONDS));
553                          q.poll(LONG_DELAY_MS, TimeUnit.MILLISECONDS);                          q.poll(LONG_DELAY_MS, MILLISECONDS);
554                          q.poll(LONG_DELAY_MS, TimeUnit.MILLISECONDS);                          q.poll(LONG_DELAY_MS, MILLISECONDS);
555                          threadShouldThrow();                          threadShouldThrow();
556                      } catch (InterruptedException success) { }                      } catch (InterruptedException success) { }
557                  }                  }
# Line 558  Line 559 
559          try {          try {
560              t.start();              t.start();
561              Thread.sleep(SMALL_DELAY_MS);              Thread.sleep(SMALL_DELAY_MS);
562              assertTrue(q.offer(zero, SHORT_DELAY_MS, TimeUnit.MILLISECONDS));              assertTrue(q.offer(zero, SHORT_DELAY_MS, MILLISECONDS));
563              t.interrupt();              t.interrupt();
564              t.join();              t.join();
565          } catch (Exception e) {          } catch (Exception e) {
# Line 854  Line 855 
855              public void run() {              public void run() {
856                  threadAssertFalse(q.offer(three));                  threadAssertFalse(q.offer(three));
857                  try {                  try {
858                      threadAssertTrue(q.offer(three, MEDIUM_DELAY_MS, TimeUnit.MILLISECONDS));                      threadAssertTrue(q.offer(three, MEDIUM_DELAY_MS, MILLISECONDS));
859                      threadAssertEquals(0, q.remainingCapacity());                      threadAssertEquals(0, q.remainingCapacity());
860                  }                  }
861                  catch (InterruptedException e) {                  catch (InterruptedException e) {
# Line 889  Line 890 
890              public void run() {              public void run() {
891                  threadAssertNull(q.poll());                  threadAssertNull(q.poll());
892                  try {                  try {
893                      threadAssertTrue(null != q.poll(MEDIUM_DELAY_MS, TimeUnit.MILLISECONDS));                      threadAssertTrue(null != q.poll(MEDIUM_DELAY_MS, MILLISECONDS));
894                      threadAssertTrue(q.isEmpty());                      threadAssertTrue(q.isEmpty());
895                  }                  }
896                  catch (InterruptedException e) {                  catch (InterruptedException e) {

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16

Doug Lea
ViewVC Help
Powered by ViewVC 1.0.8