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.28 by jsr166, Thu May 30 03:28:55 2013 UTC vs.
Revision 1.32 by jsr166, Sat Jan 17 22:55:06 2015 UTC

# Line 4 | Line 4
4   * http://creativecommons.org/publicdomain/zero/1.0/
5   */
6  
7 import junit.framework.*;
8 import java.util.Arrays;
7   import java.util.ArrayDeque;
8 + import java.util.Arrays;
9   import java.util.Collection;
10   import java.util.Deque;
11   import java.util.Iterator;
# Line 14 | Line 13 | import java.util.NoSuchElementException;
13   import java.util.Queue;
14   import java.util.Random;
15  
16 + import junit.framework.Test;
17 + import junit.framework.TestSuite;
18 +
19   public class ArrayDequeTest extends JSR166TestCase {
20      public static void main(String[] args) {
21          junit.textui.TestRunner.run(suite());
# Line 391 | Line 393 | public class ArrayDequeTest extends JSR1
393       */
394      public void testRemoveElement() {
395          ArrayDeque q = populatedDeque(SIZE);
396 <        for (int i = 1; i < SIZE; i+=2) {
396 >        for (int i = 1; i < SIZE; i += 2) {
397              assertTrue(q.contains(i));
398              assertTrue(q.remove(i));
399              assertFalse(q.contains(i));
400              assertTrue(q.contains(i-1));
401          }
402 <        for (int i = 0; i < SIZE; i+=2) {
402 >        for (int i = 0; i < SIZE; i += 2) {
403              assertTrue(q.contains(i));
404              assertTrue(q.remove(i));
405              assertFalse(q.contains(i));
# Line 530 | Line 532 | public class ArrayDequeTest extends JSR1
532       */
533      public void testRemoveFirstOccurrence() {
534          ArrayDeque q = populatedDeque(SIZE);
535 <        for (int i = 1; i < SIZE; i+=2) {
535 >        for (int i = 1; i < SIZE; i += 2) {
536              assertTrue(q.removeFirstOccurrence(new Integer(i)));
537          }
538 <        for (int i = 0; i < SIZE; i+=2) {
538 >        for (int i = 0; i < SIZE; i += 2) {
539              assertTrue(q.removeFirstOccurrence(new Integer(i)));
540              assertFalse(q.removeFirstOccurrence(new Integer(i+1)));
541          }
# Line 545 | Line 547 | public class ArrayDequeTest extends JSR1
547       */
548      public void testRemoveLastOccurrence() {
549          ArrayDeque q = populatedDeque(SIZE);
550 <        for (int i = 1; i < SIZE; i+=2) {
550 >        for (int i = 1; i < SIZE; i += 2) {
551              assertTrue(q.removeLastOccurrence(new Integer(i)));
552          }
553 <        for (int i = 0; i < SIZE; i+=2) {
553 >        for (int i = 0; i < SIZE; i += 2) {
554              assertTrue(q.removeLastOccurrence(new Integer(i)));
555              assertFalse(q.removeLastOccurrence(new Integer(i+1)));
556          }
# Line 740 | Line 742 | public class ArrayDequeTest extends JSR1
742       */
743      public void testIterator() {
744          ArrayDeque q = populatedDeque(SIZE);
743        int i = 0;
745          Iterator it = q.iterator();
746 <        while (it.hasNext()) {
746 >        int i;
747 >        for (i = 0; it.hasNext(); i++)
748              assertTrue(q.contains(it.next()));
747            ++i;
748        }
749          assertEquals(i, SIZE);
750 +        assertIteratorExhausted(it);
751 +    }
752 +
753 +    /**
754 +     * iterator of empty collection has no elements
755 +     */
756 +    public void testEmptyIterator() {
757 +        Deque c = new ArrayDeque();
758 +        assertIteratorExhausted(c.iterator());
759 +        assertIteratorExhausted(c.descendingIterator());
760      }
761  
762      /**
# Line 890 | Line 900 | public class ArrayDequeTest extends JSR1
900          assertTrue(y.isEmpty());
901      }
902  
903 +    /**
904 +     * remove(null), contains(null) always return false
905 +     */
906 +    public void testNeverContainsNull() {
907 +        Deque<?>[] qs = {
908 +            new ArrayDeque<Object>(),
909 +            populatedDeque(2),
910 +        };
911 +
912 +        for (Deque<?> q : qs) {
913 +            assertFalse(q.contains(null));
914 +            assertFalse(q.remove(null));
915 +            assertFalse(q.removeFirstOccurrence(null));
916 +            assertFalse(q.removeLastOccurrence(null));
917 +        }
918 +    }
919 +
920   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines