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

Comparing jsr166/src/test/tck/CopyOnWriteArrayListTest.java (file contents):
Revision 1.38 by jsr166, Wed Aug 10 01:28:14 2016 UTC vs.
Revision 1.46 by jsr166, Sun Jan 7 07:07:20 2018 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.LinkedList;
14   import java.util.List;
# Line 18 | Line 17 | import java.util.NoSuchElementException;
17   import java.util.concurrent.CopyOnWriteArrayList;
18  
19   import junit.framework.Test;
21 import junit.framework.TestSuite;
20  
21   public class CopyOnWriteArrayListTest extends JSR166TestCase {
22  
# Line 27 | Line 25 | public class CopyOnWriteArrayListTest ex
25      }
26  
27      public static Test suite() {
28 <        return new TestSuite(CopyOnWriteArrayListTest.class);
28 >        class Implementation implements CollectionImplementation {
29 >            public Class<?> klazz() { return CopyOnWriteArrayList.class; }
30 >            public List emptyCollection() { return new CopyOnWriteArrayList(); }
31 >            public Object makeElement(int i) { return i; }
32 >            public boolean isConcurrent() { return true; }
33 >            public boolean permitsNulls() { return true; }
34 >        }
35 >        class SubListImplementation extends Implementation {
36 >            public List emptyCollection() {
37 >                return super.emptyCollection().subList(0, 0);
38 >            }
39 >        }
40 >        return newTestSuite(
41 >                CopyOnWriteArrayListTest.class,
42 >                CollectionTest.testSuite(new Implementation()),
43 >                CollectionTest.testSuite(new SubListImplementation()));
44      }
45  
46      static CopyOnWriteArrayList<Integer> populatedArray(int n) {
47 <        CopyOnWriteArrayList<Integer> a = new CopyOnWriteArrayList<Integer>();
47 >        CopyOnWriteArrayList<Integer> a = new CopyOnWriteArrayList<>();
48          assertTrue(a.isEmpty());
49          for (int i = 0; i < n; i++)
50              a.add(i);
# Line 41 | Line 54 | public class CopyOnWriteArrayListTest ex
54      }
55  
56      static CopyOnWriteArrayList<Integer> populatedArray(Integer[] elements) {
57 <        CopyOnWriteArrayList<Integer> a = new CopyOnWriteArrayList<Integer>();
57 >        CopyOnWriteArrayList<Integer> a = new CopyOnWriteArrayList<>();
58          assertTrue(a.isEmpty());
59 <        for (int i = 0; i < elements.length; i++)
60 <            a.add(elements[i]);
59 >        for (Integer element : elements)
60 >            a.add(element);
61          assertFalse(a.isEmpty());
62          assertEquals(elements.length, a.size());
63          return a;
# Line 734 | Line 747 | public class CopyOnWriteArrayListTest ex
747      }
748  
749      /**
750 <     * a deserialized serialized list is equal
750 >     * a deserialized/reserialized list equals original
751       */
752      public void testSerialization() throws Exception {
753          List x = populatedArray(SIZE);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines