638 |
|
assertEquals(SIZE, q.remainingCapacity()); |
639 |
|
q.add(one); |
640 |
|
assertFalse(q.isEmpty()); |
641 |
+ |
assertTrue(q.contains(one)); |
642 |
|
q.clear(); |
643 |
|
assertTrue(q.isEmpty()); |
644 |
|
} |
957 |
|
assertEquals(l.size(), SIZE); |
958 |
|
for (int i = 0; i < SIZE; ++i) |
959 |
|
assertEquals(l.get(i), new Integer(i)); |
960 |
+ |
q.add(zero); |
961 |
+ |
q.add(one); |
962 |
+ |
assertFalse(q.isEmpty()); |
963 |
+ |
assertTrue(q.contains(zero)); |
964 |
+ |
assertTrue(q.contains(one)); |
965 |
+ |
l.clear(); |
966 |
+ |
q.drainTo(l); |
967 |
+ |
assertEquals(q.size(), 0); |
968 |
+ |
assertEquals(l.size(), 2); |
969 |
+ |
for (int i = 0; i < 2; ++i) |
970 |
+ |
assertEquals(l.get(i), new Integer(i)); |
971 |
|
} |
972 |
|
|
973 |
|
/** |
1026 |
|
* drainTo(c, n) empties first max {n, size} elements of queue into c |
1027 |
|
*/ |
1028 |
|
public void testDrainToN() { |
1029 |
+ |
LinkedBlockingQueue q = new LinkedBlockingQueue(); |
1030 |
|
for (int i = 0; i < SIZE + 2; ++i) { |
1031 |
< |
LinkedBlockingQueue q = populatedQueue(SIZE); |
1031 |
> |
for(int j = 0; j < SIZE; j++) |
1032 |
> |
assertTrue(q.offer(new Integer(j))); |
1033 |
|
ArrayList l = new ArrayList(); |
1034 |
|
q.drainTo(l, i); |
1035 |
|
int k = (i < SIZE)? i : SIZE; |
1022 |
– |
assertEquals(q.size(), SIZE-k); |
1036 |
|
assertEquals(l.size(), k); |
1037 |
+ |
assertEquals(q.size(), SIZE-k); |
1038 |
|
for (int j = 0; j < k; ++j) |
1039 |
|
assertEquals(l.get(j), new Integer(j)); |
1040 |
+ |
while (q.poll() != null) ; |
1041 |
|
} |
1042 |
|
} |
1043 |
|
|