1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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.ArrayShortList;
28 import org.apache.commons.collections.primitives.ShortList;
29
30
31
32
33
34 public class TestShortListIteratorListIterator extends AbstractTestListIterator {
35
36
37
38
39 public TestShortListIteratorListIterator(String testName) {
40 super(testName);
41 }
42
43 public static Test suite() {
44 return new TestSuite(TestShortListIteratorListIterator.class);
45 }
46
47
48
49
50 public ListIterator makeEmptyListIterator() {
51 return ShortListIteratorListIterator.wrap(makeEmptyShortList().listIterator());
52 }
53
54 public ListIterator makeFullListIterator() {
55 return ShortListIteratorListIterator.wrap(makeFullShortList().listIterator());
56 }
57
58 protected ShortList makeEmptyShortList() {
59 return new ArrayShortList();
60 }
61
62 protected ShortList makeFullShortList() {
63 ShortList list = makeEmptyShortList();
64 short[] elts = getFullElements();
65 for(int i=0;i<elts.length;i++) {
66 list.add((short)elts[i]);
67 }
68 return list;
69 }
70
71 public short[] getFullElements() {
72 return new short[] { (short)0, (short)1, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9 };
73 }
74
75 public Object addSetValue() {
76 return new Short((short)1);
77 }
78
79
80
81
82
83 public void testNextHasNextRemove() {
84 short[] elements = getFullElements();
85 Iterator iter = makeFullIterator();
86 for(int i=0;i<elements.length;i++) {
87 assertTrue(iter.hasNext());
88 assertEquals(new Short(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
103 }
104 if(supportsRemove()) {
105 try {
106 makeEmptyIterator().remove();
107 fail("Expected IllegalStateException");
108 } catch(IllegalStateException e) {
109
110 }
111 }
112 }
113
114 public void testRemoveBeforeNext() {
115 if(supportsRemove()) {
116 try {
117 makeFullIterator().remove();
118 fail("Expected IllegalStateException");
119 } catch(IllegalStateException e) {
120
121 }
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
135 }
136 }
137 }
138
139 }