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

Comparing jsr166/src/test/tck/TreeSubSetTest.java (file contents):
Revision 1.22 by jsr166, Tue Feb 21 01:54:04 2012 UTC vs.
Revision 1.29 by jsr166, Sat Jan 17 22:55:07 2015 UTC

# Line 4 | Line 4
4   * http://creativecommons.org/publicdomain/zero/1.0/
5   */
6  
7 import junit.framework.*;
7   import java.util.Arrays;
8   import java.util.Comparator;
9   import java.util.Iterator;
10   import java.util.NavigableSet;
11 + import java.util.Set;
12   import java.util.SortedSet;
13   import java.util.TreeSet;
14  
15 + import junit.framework.Test;
16 + import junit.framework.TestSuite;
17 +
18   public class TreeSubSetTest extends JSR166TestCase {
19      public static void main(String[] args) {
20          junit.textui.TestRunner.run(suite());
# Line 27 | Line 30 | public class TreeSubSetTest extends JSR1
30      }
31  
32      /**
33 <     * Creates a set of given size containing consecutive
33 >     * Returns a new set of given size containing consecutive
34       * Integers 0 ... n.
35       */
36      private NavigableSet<Integer> populatedSet(int n) {
37          TreeSet<Integer> q = new TreeSet<Integer>();
38          assertTrue(q.isEmpty());
39  
40 <        for (int i = n-1; i >= 0; i-=2)
40 >        for (int i = n-1; i >= 0; i -= 2)
41              assertTrue(q.add(new Integer(i)));
42 <        for (int i = (n & 1); i < n; i+=2)
42 >        for (int i = (n & 1); i < n; i += 2)
43              assertTrue(q.add(new Integer(i)));
44          assertTrue(q.add(new Integer(-n)));
45          assertTrue(q.add(new Integer(n)));
# Line 47 | Line 50 | public class TreeSubSetTest extends JSR1
50      }
51  
52      /**
53 <     * Creates set of first 5 ints.
53 >     * Returns a new set of first 5 ints.
54       */
55      private NavigableSet set5() {
56          TreeSet q = new TreeSet();
# Line 235 | Line 238 | public class TreeSubSetTest extends JSR1
238       */
239      public void testRemoveElement() {
240          NavigableSet q = populatedSet(SIZE);
241 <        for (int i = 1; i < SIZE; i+=2) {
241 >        for (int i = 1; i < SIZE; i += 2) {
242              assertTrue(q.contains(i));
243              assertTrue(q.remove(i));
244              assertFalse(q.contains(i));
245              assertTrue(q.contains(i-1));
246          }
247 <        for (int i = 0; i < SIZE; i+=2) {
247 >        for (int i = 0; i < SIZE; i += 2) {
248              assertTrue(q.contains(i));
249              assertTrue(q.remove(i));
250              assertFalse(q.contains(i));
# Line 320 | Line 323 | public class TreeSubSetTest extends JSR1
323              assertTrue(q.removeAll(p));
324              assertEquals(SIZE-i, q.size());
325              for (int j = 0; j < i; ++j) {
326 <                Integer I = (Integer)(p.pollFirst());
327 <                assertFalse(q.contains(I));
326 >                Integer x = (Integer)(p.pollFirst());
327 >                assertFalse(q.contains(x));
328              }
329          }
330      }
# Line 425 | Line 428 | public class TreeSubSetTest extends JSR1
428       */
429      public void testIterator() {
430          NavigableSet q = populatedSet(SIZE);
428        int i = 0;
431          Iterator it = q.iterator();
432 <        while (it.hasNext()) {
432 >        int i;
433 >        for (i = 0; it.hasNext(); i++)
434              assertTrue(q.contains(it.next()));
432            ++i;
433        }
435          assertEquals(i, SIZE);
436 +        assertIteratorExhausted(it);
437      }
438  
439      /**
440       * iterator of empty set has no elements
441       */
442      public void testEmptyIterator() {
443 <        NavigableSet q = set0();
442 <        int i = 0;
443 <        Iterator it = q.iterator();
444 <        while (it.hasNext()) {
445 <            assertTrue(q.contains(it.next()));
446 <            ++i;
447 <        }
448 <        assertEquals(0, i);
443 >        assertIteratorExhausted(set0().iterator());
444      }
445  
446      /**
# Line 485 | Line 480 | public class TreeSubSetTest extends JSR1
480          NavigableSet x = populatedSet(SIZE);
481          NavigableSet y = serialClone(x);
482  
483 <        assertTrue(x != y);
483 >        assertNotSame(x, y);
484          assertEquals(x.size(), y.size());
485          assertEquals(x, y);
486          assertEquals(y, x);
# Line 729 | Line 724 | public class TreeSubSetTest extends JSR1
724       */
725      public void testDescendingRemoveElement() {
726          NavigableSet q = populatedSet(SIZE);
727 <        for (int i = 1; i < SIZE; i+=2) {
727 >        for (int i = 1; i < SIZE; i += 2) {
728              assertTrue(q.remove(new Integer(i)));
729          }
730 <        for (int i = 0; i < SIZE; i+=2) {
730 >        for (int i = 0; i < SIZE; i += 2) {
731              assertTrue(q.remove(new Integer(i)));
732              assertFalse(q.remove(new Integer(i+1)));
733          }
# Line 808 | Line 803 | public class TreeSubSetTest extends JSR1
803              assertTrue(q.removeAll(p));
804              assertEquals(SIZE-i, q.size());
805              for (int j = 0; j < i; ++j) {
806 <                Integer I = (Integer)(p.pollFirst());
807 <                assertFalse(q.contains(I));
806 >                Integer x = (Integer)(p.pollFirst());
807 >                assertFalse(q.contains(x));
808              }
809          }
810      }
# Line 974 | Line 969 | public class TreeSubSetTest extends JSR1
969          NavigableSet x = dset5();
970          NavigableSet y = serialClone(x);
971  
972 <        assertTrue(x != y);
972 >        assertNotSame(x, y);
973          assertEquals(x.size(), y.size());
974          assertEquals(x.toString(), y.toString());
975          assertEquals(x, y);
# Line 1105 | Line 1100 | public class TreeSubSetTest extends JSR1
1100          assertEquals(4, set.size());
1101      }
1102  
1103 +    /**
1104 +     * addAll is idempotent
1105 +     */
1106 +    public void testAddAll_idempotent() throws Exception {
1107 +        Set x = populatedSet(SIZE);
1108 +        Set y = new TreeSet(x);
1109 +        y.addAll(x);
1110 +        assertEquals(x, y);
1111 +        assertEquals(y, x);
1112 +    }
1113 +
1114   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines