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

Comparing jsr166/src/test/tck/ArrayDequeTest.java (file contents):
Revision 1.16 by jsr166, Wed Aug 25 01:46:24 2010 UTC vs.
Revision 1.23 by jsr166, Fri May 27 19:26:42 2011 UTC

# Line 1 | Line 1
1   /*
2   * Written by Doug Lea with assistance from members of JCP JSR-166
3   * Expert Group and released to the public domain, as explained at
4 < * http://creativecommons.org/licenses/publicdomain
4 > * http://creativecommons.org/publicdomain/zero/1.0/
5   */
6  
7   import junit.framework.*;
# Line 26 | Line 26 | public class ArrayDequeTest extends JSR1
26       * Create a deque of given size containing consecutive
27       * Integers 0 ... n.
28       */
29 <    private ArrayDeque populatedDeque(int n) {
30 <        ArrayDeque q = new ArrayDeque();
29 >    private ArrayDeque<Integer> populatedDeque(int n) {
30 >        ArrayDeque<Integer> q = new ArrayDeque<Integer>();
31          assertTrue(q.isEmpty());
32          for (int i = 0; i < n; ++i)
33              assertTrue(q.offerLast(new Integer(i)));
# Line 391 | Line 391 | public class ArrayDequeTest extends JSR1
391      public void testRemoveElement() {
392          ArrayDeque q = populatedDeque(SIZE);
393          for (int i = 1; i < SIZE; i+=2) {
394 <            assertTrue(q.remove(new Integer(i)));
394 >            assertTrue(q.contains(i));
395 >            assertTrue(q.remove(i));
396 >            assertFalse(q.contains(i));
397 >            assertTrue(q.contains(i-1));
398          }
399          for (int i = 0; i < SIZE; i+=2) {
400 <            assertTrue(q.remove(new Integer(i)));
401 <            assertFalse(q.remove(new Integer(i+1)));
400 >            assertTrue(q.contains(i));
401 >            assertTrue(q.remove(i));
402 >            assertFalse(q.contains(i));
403 >            assertFalse(q.remove(i+1));
404 >            assertFalse(q.contains(i+1));
405          }
406          assertTrue(q.isEmpty());
407      }
# Line 488 | Line 494 | public class ArrayDequeTest extends JSR1
494          assertNull(q.peekLast());
495      }
496  
491
497      /**
498       * removeFirst() removes first element, or throws NSEE if empty
499       */
# Line 620 | Line 625 | public class ArrayDequeTest extends JSR1
625      }
626  
627      /**
628 <     * toArray() contains all elements
628 >     * toArray() contains all elements in FIFO order
629       */
630      public void testToArray() {
631          ArrayDeque q = populatedDeque(SIZE);
632          Object[] o = q.toArray();
628        Arrays.sort(o);
633          for (int i = 0; i < o.length; i++)
634 <            assertEquals(o[i], q.pollFirst());
634 >            assertSame(o[i], q.pollFirst());
635      }
636  
637      /**
638 <     * toArray(a) contains all elements
638 >     * toArray(a) contains all elements in FIFO order
639       */
640      public void testToArray2() {
641 <        ArrayDeque q = populatedDeque(SIZE);
641 >        ArrayDeque<Integer> q = populatedDeque(SIZE);
642          Integer[] ints = new Integer[SIZE];
643 <        ints = (Integer[])q.toArray(ints);
644 <        Arrays.sort(ints);
643 >        Integer[] array = q.toArray(ints);
644 >        assertSame(ints, array);
645          for (int i = 0; i < ints.length; i++)
646 <            assertEquals(ints[i], q.pollFirst());
646 >            assertSame(ints[i], q.remove());
647      }
648  
649      /**
650 <     * toArray(null) throws NPE
650 >     * toArray(null) throws NullPointerException
651       */
652 <    public void testToArray_BadArg() {
652 >    public void testToArray_NullArg() {
653          ArrayDeque l = new ArrayDeque();
654          l.add(new Object());
655          try {
656 <            Object o[] = l.toArray(null);
656 >            l.toArray(null);
657              shouldThrow();
658          } catch (NullPointerException success) {}
659      }
660  
661      /**
662 <     * toArray with incompatible array type throws CCE
662 >     * toArray(incompatible array type) throws ArrayStoreException
663       */
664      public void testToArray1_BadArg() {
665          ArrayDeque l = new ArrayDeque();
666          l.add(new Integer(5));
667          try {
668 <            Object o[] = l.toArray(new String[10]);
668 >            l.toArray(new String[10]);
669              shouldThrow();
670          } catch (ArrayStoreException success) {}
671      }
# Line 792 | Line 796 | public class ArrayDequeTest extends JSR1
796          }
797      }
798  
795
799      /**
800       * toString() contains toStrings of elements
801       */
# Line 800 | Line 803 | public class ArrayDequeTest extends JSR1
803          ArrayDeque q = populatedDeque(SIZE);
804          String s = q.toString();
805          for (int i = 0; i < SIZE; ++i) {
806 <            assertTrue(s.indexOf(String.valueOf(i)) >= 0);
806 >            assertTrue(s.contains(String.valueOf(i)));
807          }
808      }
809  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines