1 17 package org.apache.commons.collections.primitives.adapters; 18 19 import java.util.Iterator ; 20 import java.util.ListIterator ; 21 import java.util.NoSuchElementException ; 22 23 import junit.framework.Test; 24 import junit.framework.TestSuite; 25 26 import org.apache.commons.collections.iterators.AbstractTestListIterator; 27 import org.apache.commons.collections.primitives.ArrayIntList; 28 import org.apache.commons.collections.primitives.IntList; 29 30 34 public class TestIntListIteratorListIterator extends AbstractTestListIterator { 35 36 39 public TestIntListIteratorListIterator(String testName) { 40 super(testName); 41 } 42 43 public static Test suite() { 44 return new TestSuite(TestIntListIteratorListIterator.class); 45 } 46 47 50 public ListIterator makeEmptyListIterator() { 51 return IntListIteratorListIterator.wrap(makeEmptyIntList().listIterator()); 52 } 53 54 public ListIterator makeFullListIterator() { 55 return IntListIteratorListIterator.wrap(makeFullIntList().listIterator()); 56 } 57 58 protected IntList makeEmptyIntList() { 59 return new ArrayIntList(); 60 } 61 62 protected IntList makeFullIntList() { 63 IntList list = makeEmptyIntList(); 64 int[] elts = getFullElements(); 65 for(int i=0;i<elts.length;i++) { 66 list.add(elts[i]); 67 } 68 return list; 69 } 70 71 public int[] getFullElements() { 72 return new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 73 } 74 75 public Object addSetValue() { 76 return new Integer (1); 77 } 78 79 82 83 public void testNextHasNextRemove() { 84 int[] elements = getFullElements(); 85 Iterator iter = makeFullIterator(); 86 for(int i=0;i<elements.length;i++) { 87 assertTrue(iter.hasNext()); 88 assertEquals(new Integer (elements[i]),iter.next()); 89 if(supportsRemove()) { 90 iter.remove(); 91 } 92 } 93 assertTrue(! iter.hasNext() ); 94 } 95 96 public void testEmptyIterator() { 97 assertTrue( ! makeEmptyIterator().hasNext() ); 98 try { 99 makeEmptyIterator().next(); 100 fail("Expected NoSuchElementException"); 101 } catch(NoSuchElementException e) { 102 } 104 if(supportsRemove()) { 105 try { 106 makeEmptyIterator().remove(); 107 fail("Expected IllegalStateException"); 108 } catch(IllegalStateException e) { 109 } 111 } 112 } 113 114 public void testRemoveBeforeNext() { 115 if(supportsRemove()) { 116 try { 117 makeFullIterator().remove(); 118 fail("Expected IllegalStateException"); 119 } catch(IllegalStateException e) { 120 } 122 } 123 } 124 125 public void testRemoveAfterRemove() { 126 if(supportsRemove()) { 127 Iterator iter = makeFullIterator(); 128 iter.next(); 129 iter.remove(); 130 try { 131 iter.remove(); 132 fail("Expected IllegalStateException"); 133 } catch(IllegalStateException e) { 134 } 136 } 137 } 138 139 } 140 | Popular Tags |