--- jsr166/src/test/tck/TreeMapTest.java 2006/04/20 20:35:00 1.4 +++ jsr166/src/test/tck/TreeMapTest.java 2009/11/02 20:28:32 1.6 @@ -11,7 +11,7 @@ import java.io.*; public class TreeMapTest extends JSR166TestCase { public static void main(String[] args) { - junit.textui.TestRunner.run (suite()); + junit.textui.TestRunner.run (suite()); } public static Test suite() { return new TestSuite(TreeMapTest.class); @@ -20,7 +20,7 @@ public class TreeMapTest extends JSR166T /** * Create a map from Integers 1-5 to Strings "A"-"E". */ - private static TreeMap map5() { + private static TreeMap map5() { TreeMap map = new TreeMap(); assertTrue(map.isEmpty()); map.put(one, "A"); @@ -43,7 +43,7 @@ public class TreeMapTest extends JSR166T } /** - * + * */ public void testConstructFromSorted() { TreeMap map = map5(); @@ -169,11 +169,33 @@ public class TreeMapTest extends JSR166T Iterator i = s.iterator(); Integer last = (Integer)i.next(); assertEquals(last, one); + int count = 1; while (i.hasNext()) { Integer k = (Integer)i.next(); assertTrue(last.compareTo(k) < 0); last = k; + ++count; } + assertEquals(count ,5); + } + + /** + * descending iterator of key set is inverse ordered + */ + public void testKeySetDescendingIteratorOrder() { + TreeMap map = map5(); + NavigableSet s = map.navigableKeySet(); + Iterator i = s.descendingIterator(); + Integer last = (Integer)i.next(); + assertEquals(last, five); + int count = 1; + while (i.hasNext()) { + Integer k = (Integer)i.next(); + assertTrue(last.compareTo(k) > 0); + last = k; + ++count; + } + assertEquals(count ,5); } /** @@ -185,11 +207,33 @@ public class TreeMapTest extends JSR166T Iterator i = s.iterator(); Integer last = (Integer)i.next(); assertEquals(last, five); + int count = 1; while (i.hasNext()) { Integer k = (Integer)i.next(); assertTrue(last.compareTo(k) > 0); last = k; + ++count; + } + assertEquals(count, 5); + } + + /** + * descending iterator of descendingKeySet is ordered + */ + public void testDescendingKeySetDescendingIteratorOrder() { + TreeMap map = map5(); + NavigableSet s = map.descendingKeySet(); + Iterator i = s.descendingIterator(); + Integer last = (Integer)i.next(); + assertEquals(last, one); + int count = 1; + while (i.hasNext()) { + Integer k = (Integer)i.next(); + assertTrue(last.compareTo(k) < 0); + last = k; + ++count; } + assertEquals(count, 5); } /** @@ -216,7 +260,7 @@ public class TreeMapTest extends JSR166T Iterator it = s.iterator(); while (it.hasNext()) { Map.Entry e = (Map.Entry) it.next(); - assertTrue( + assertTrue( (e.getKey().equals(one) && e.getValue().equals("A")) || (e.getKey().equals(two) && e.getValue().equals("B")) || (e.getKey().equals(three) && e.getValue().equals("C")) || @@ -235,7 +279,7 @@ public class TreeMapTest extends JSR166T Iterator it = s.iterator(); while (it.hasNext()) { Map.Entry e = (Map.Entry) it.next(); - assertTrue( + assertTrue( (e.getKey().equals(one) && e.getValue().equals("A")) || (e.getKey().equals(two) && e.getValue().equals("B")) || (e.getKey().equals(three) && e.getValue().equals("C")) || @@ -525,7 +569,7 @@ public class TreeMapTest extends JSR166T for (int i = 1; i <= 5; ++i) { assertTrue(s.indexOf(String.valueOf(i)) >= 0); } - } + } // Exception tests @@ -614,7 +658,7 @@ public class TreeMapTest extends JSR166T k = (Integer)(r.next()); assertEquals(two, k); assertFalse(r.hasNext()); - + Iterator j = sm.keySet().iterator(); j.next(); j.remove(); @@ -648,7 +692,7 @@ public class TreeMapTest extends JSR166T k = (Integer)(r.next()); assertEquals(two, k); assertFalse(r.hasNext()); - + Iterator j = sm.keySet().iterator(); j.next(); j.remove(); @@ -1058,5 +1102,5 @@ public class TreeMapTest extends JSR166T static boolean eq(Integer i, int j) { return i == null ? j == -1 : i == j; } - + }