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

Comparing jsr166/src/test/tck/CopyOnWriteArraySetTest.java (file contents):
Revision 1.33 by jsr166, Fri May 15 18:21:19 2015 UTC vs.
Revision 1.38 by jsr166, Wed Jan 4 06:09:58 2017 UTC

# Line 9 | Line 9
9   import java.util.ArrayList;
10   import java.util.Arrays;
11   import java.util.Collection;
12 import java.util.Collections;
12   import java.util.Iterator;
13   import java.util.NoSuchElementException;
14   import java.util.Set;
# Line 27 | Line 26 | public class CopyOnWriteArraySetTest ext
26      }
27  
28      static CopyOnWriteArraySet<Integer> populatedSet(int n) {
29 <        CopyOnWriteArraySet<Integer> a = new CopyOnWriteArraySet<Integer>();
29 >        CopyOnWriteArraySet<Integer> a = new CopyOnWriteArraySet<>();
30          assertTrue(a.isEmpty());
31          for (int i = 0; i < n; i++)
32              a.add(i);
# Line 37 | Line 36 | public class CopyOnWriteArraySetTest ext
36      }
37  
38      static CopyOnWriteArraySet populatedSet(Integer[] elements) {
39 <        CopyOnWriteArraySet<Integer> a = new CopyOnWriteArraySet<Integer>();
39 >        CopyOnWriteArraySet<Integer> a = new CopyOnWriteArraySet<>();
40          assertTrue(a.isEmpty());
41          for (int i = 0; i < elements.length; i++)
42              a.add(elements[i]);
# Line 59 | Line 58 | public class CopyOnWriteArraySetTest ext
58       */
59      public void testConstructor3() {
60          Integer[] ints = new Integer[SIZE];
61 <        for (int i = 0; i < SIZE-1; ++i)
61 >        for (int i = 0; i < SIZE - 1; ++i)
62              ints[i] = new Integer(i);
63          CopyOnWriteArraySet a = new CopyOnWriteArraySet(Arrays.asList(ints));
64          for (int i = 0; i < SIZE; ++i)
# Line 134 | Line 133 | public class CopyOnWriteArraySetTest ext
133          CopyOnWriteArraySet b = populatedSet(3);
134          assertTrue(a.equals(b));
135          assertTrue(b.equals(a));
136 +        assertTrue(a.containsAll(b));
137 +        assertTrue(b.containsAll(a));
138          assertEquals(a.hashCode(), b.hashCode());
139 +        assertEquals(a.size(), b.size());
140 +
141          a.add(m1);
142          assertFalse(a.equals(b));
143          assertFalse(b.equals(a));
144 +        assertTrue(a.containsAll(b));
145 +        assertFalse(b.containsAll(a));
146          b.add(m1);
147          assertTrue(a.equals(b));
148          assertTrue(b.equals(a));
149 +        assertTrue(a.containsAll(b));
150 +        assertTrue(b.containsAll(a));
151 +        assertEquals(a.hashCode(), b.hashCode());
152 +
153 +        Object x = a.iterator().next();
154 +        a.remove(x);
155 +        assertFalse(a.equals(b));
156 +        assertFalse(b.equals(a));
157 +        assertFalse(a.containsAll(b));
158 +        assertTrue(b.containsAll(a));
159 +        a.add(x);
160 +        assertTrue(a.equals(b));
161 +        assertTrue(b.equals(a));
162 +        assertTrue(a.containsAll(b));
163 +        assertTrue(b.containsAll(a));
164          assertEquals(a.hashCode(), b.hashCode());
165 +        assertEquals(a.size(), b.size());
166 +
167 +        CopyOnWriteArraySet empty1 = new CopyOnWriteArraySet(Arrays.asList());
168 +        CopyOnWriteArraySet empty2 = new CopyOnWriteArraySet(Arrays.asList());
169 +        assertTrue(empty1.equals(empty1));
170 +        assertTrue(empty1.equals(empty2));
171 +
172 +        assertFalse(empty1.equals(a));
173 +        assertFalse(a.equals(empty1));
174 +
175 +        assertFalse(a.equals(null));
176      }
177  
178      /**
# Line 149 | Line 180 | public class CopyOnWriteArraySetTest ext
180       */
181      public void testContainsAll() {
182          Collection full = populatedSet(3);
183 +        assertTrue(full.containsAll(full));
184          assertTrue(full.containsAll(Arrays.asList()));
185          assertTrue(full.containsAll(Arrays.asList(one)));
186          assertTrue(full.containsAll(Arrays.asList(one, two)));
187          assertFalse(full.containsAll(Arrays.asList(one, two, six)));
188          assertFalse(full.containsAll(Arrays.asList(six)));
189 +
190 +        CopyOnWriteArraySet empty1 = new CopyOnWriteArraySet(Arrays.asList());
191 +        CopyOnWriteArraySet empty2 = new CopyOnWriteArraySet(Arrays.asList());
192 +        assertTrue(empty1.containsAll(empty2));
193 +        assertTrue(empty1.containsAll(empty1));
194 +        assertFalse(empty1.containsAll(full));
195 +        assertTrue(full.containsAll(empty1));
196 +
197 +        try {
198 +            full.containsAll(null);
199 +            shouldThrow();
200 +        } catch (NullPointerException success) {}
201      }
202  
203      /**
# Line 179 | Line 223 | public class CopyOnWriteArraySetTest ext
223          Integer[] elements = new Integer[SIZE];
224          for (int i = 0; i < SIZE; i++)
225              elements[i] = i;
226 <        Collections.shuffle(Arrays.asList(elements));
226 >        shuffle(elements);
227          Collection<Integer> full = populatedSet(elements);
228  
229          Iterator it = full.iterator();
# Line 266 | Line 310 | public class CopyOnWriteArraySetTest ext
310          Integer[] elements = new Integer[SIZE];
311          for (int i = 0; i < SIZE; i++)
312              elements[i] = i;
313 <        Collections.shuffle(Arrays.asList(elements));
313 >        shuffle(elements);
314          Collection<Integer> full = populatedSet(elements);
315  
316          assertTrue(Arrays.equals(elements, full.toArray()));
# Line 284 | Line 328 | public class CopyOnWriteArraySetTest ext
328          a = new Integer[0];
329          assertSame(a, empty.toArray(a));
330  
331 <        a = new Integer[SIZE/2];
331 >        a = new Integer[SIZE / 2];
332          Arrays.fill(a, 42);
333          assertSame(a, empty.toArray(a));
334          assertNull(a[0]);
# Line 294 | Line 338 | public class CopyOnWriteArraySetTest ext
338          Integer[] elements = new Integer[SIZE];
339          for (int i = 0; i < SIZE; i++)
340              elements[i] = i;
341 <        Collections.shuffle(Arrays.asList(elements));
341 >        shuffle(elements);
342          Collection<Integer> full = populatedSet(elements);
343  
344          Arrays.fill(a, 42);
# Line 308 | Line 352 | public class CopyOnWriteArraySetTest ext
352          assertSame(a, full.toArray(a));
353          assertTrue(Arrays.equals(elements, a));
354  
355 <        a = new Integer[2*SIZE];
355 >        a = new Integer[2 * SIZE];
356          Arrays.fill(a, 42);
357          assertSame(a, full.toArray(a));
358          assertTrue(Arrays.equals(elements, Arrays.copyOf(a, SIZE)));

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines