30 |
|
|
31 |
|
public static class Bounded extends BlockingQueueTest { |
32 |
|
protected BlockingQueue emptyCollection() { |
33 |
< |
return new LinkedBlockingQueue(20); |
33 |
> |
return new LinkedBlockingQueue(SIZE); |
34 |
|
} |
35 |
|
} |
36 |
|
|
312 |
|
}}); |
313 |
|
|
314 |
|
await(pleaseTake); |
315 |
< |
assertEquals(q.remainingCapacity(), 0); |
315 |
> |
assertEquals(0, q.remainingCapacity()); |
316 |
|
assertEquals(0, q.take()); |
317 |
|
|
318 |
|
await(pleaseInterrupt); |
319 |
|
assertThreadStaysAlive(t); |
320 |
|
t.interrupt(); |
321 |
|
awaitTermination(t); |
322 |
< |
assertEquals(q.remainingCapacity(), 0); |
322 |
> |
assertEquals(0, q.remainingCapacity()); |
323 |
|
} |
324 |
|
|
325 |
|
/** |
504 |
|
} |
505 |
|
|
506 |
|
/** |
507 |
– |
* remove(x) removes x and returns true if present |
508 |
– |
*/ |
509 |
– |
public void testRemoveElement() { |
510 |
– |
LinkedBlockingQueue q = populatedQueue(SIZE); |
511 |
– |
for (int i = 1; i < SIZE; i+=2) { |
512 |
– |
assertTrue(q.contains(i)); |
513 |
– |
assertTrue(q.remove(i)); |
514 |
– |
assertFalse(q.contains(i)); |
515 |
– |
assertTrue(q.contains(i-1)); |
516 |
– |
} |
517 |
– |
for (int i = 0; i < SIZE; i+=2) { |
518 |
– |
assertTrue(q.contains(i)); |
519 |
– |
assertTrue(q.remove(i)); |
520 |
– |
assertFalse(q.contains(i)); |
521 |
– |
assertFalse(q.remove(i+1)); |
522 |
– |
assertFalse(q.contains(i+1)); |
523 |
– |
} |
524 |
– |
assertTrue(q.isEmpty()); |
525 |
– |
} |
526 |
– |
|
527 |
– |
/** |
507 |
|
* An add following remove(x) succeeds |
508 |
|
*/ |
509 |
|
public void testRemoveElementAndAdd() throws InterruptedException { |
773 |
|
LinkedBlockingQueue q = populatedQueue(SIZE); |
774 |
|
ArrayList l = new ArrayList(); |
775 |
|
q.drainTo(l); |
776 |
< |
assertEquals(q.size(), 0); |
777 |
< |
assertEquals(l.size(), SIZE); |
776 |
> |
assertEquals(0, q.size()); |
777 |
> |
assertEquals(SIZE, l.size()); |
778 |
|
for (int i = 0; i < SIZE; ++i) |
779 |
|
assertEquals(l.get(i), new Integer(i)); |
780 |
|
q.add(zero); |
784 |
|
assertTrue(q.contains(one)); |
785 |
|
l.clear(); |
786 |
|
q.drainTo(l); |
787 |
< |
assertEquals(q.size(), 0); |
788 |
< |
assertEquals(l.size(), 2); |
787 |
> |
assertEquals(0, q.size()); |
788 |
> |
assertEquals(2, l.size()); |
789 |
|
for (int i = 0; i < 2; ++i) |
790 |
|
assertEquals(l.get(i), new Integer(i)); |
791 |
|
} |
821 |
|
ArrayList l = new ArrayList(); |
822 |
|
q.drainTo(l, i); |
823 |
|
int k = (i < SIZE) ? i : SIZE; |
824 |
< |
assertEquals(l.size(), k); |
825 |
< |
assertEquals(q.size(), SIZE-k); |
824 |
> |
assertEquals(k, l.size()); |
825 |
> |
assertEquals(SIZE-k, q.size()); |
826 |
|
for (int j = 0; j < k; ++j) |
827 |
|
assertEquals(l.get(j), new Integer(j)); |
828 |
|
while (q.poll() != null) ; |