ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/tck/BlockingQueueTest.java
(Generate patch)

Comparing jsr166/src/test/tck/BlockingQueueTest.java (file contents):
Revision 1.10 by jsr166, Tue Jun 14 03:22:38 2011 UTC vs.
Revision 1.11 by jsr166, Tue Jun 14 04:30:06 2011 UTC

# Line 181 | Line 181 | public abstract class BlockingQueueTest
181      }
182  
183      /**
184 <     * drainTo(c, -n) returns 0
184 >     * drainTo(c, n) returns 0 and does nothing when n <= 0
185       */
186 <    public void testDrainToNegativeMaxElements() {
186 >    public void testDrainToNonPositiveMaxElements() {
187          final BlockingQueue q = emptyCollection();
188 <        assertEquals(0, q.drainTo(new ArrayList(), -42));
189 <    }
190 <
191 <    /**
192 <     * drainTo(c, 0) returns 0 and does nothing
193 <     */
194 <    public void testDrainToZeroMaxElements() {
195 <        final BlockingQueue q = emptyCollection();
196 <        if (q.remainingCapacity() == 0) {
197 <            // SynchronousQueue, for example
198 <            assertEquals(0, q.drainTo(new ArrayList(), 0));
199 <        } else {
188 >        final int[] ns = { 0, -1, -42, Integer.MIN_VALUE };
189 >        for (int n : ns)
190 >            assertEquals(0, q.drainTo(new ArrayList(), n));
191 >        if (q.remainingCapacity() > 0) {
192 >            // Not SynchronousQueue, that is
193              Object one = makeElement(1);
194              q.add(one);
195              ArrayList c = new ArrayList();
196 <            assertEquals(0, q.drainTo(c, 0));
196 >            for (int n : ns)
197 >                assertEquals(0, q.drainTo(new ArrayList(), n));
198              assertEquals(1, q.size());
199              assertSame(one, q.poll());
200              assertTrue(c.isEmpty());

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines