< prev index next >

test/jdk/java/util/Collection/MOAT.java

Print this page
rev 48060 : 8060192: Add default method <A> A[] Collection.toArray(IntFunction<A[]> generator)
Reviewed-by: martin, forax, psandoz

@@ -361,10 +361,11 @@
         check(c.isEmpty());
         equal(c.size(), 0);
         equal(c.toString(),"[]");
         equal(c.toArray().length, 0);
         equal(c.toArray(new Object[0]).length, 0);
+        equal(c.toArray(Object[]::new).length, 0);
         check(c.toArray(new Object[]{42})[0] == null);
 
         Object[] a = new Object[1]; a[0] = Boolean.TRUE;
         equal(c.toArray(a), a);
         equal(a[0], null);

@@ -636,10 +637,17 @@
                 int i = 0; for (Integer j : c) check(a[i++] == j);
                 check((size <= c.size()) || (a[c.size()] == null));
                 check(a.getClass() == Integer[].class);
             }
 
+            {
+                Integer[] a = c.toArray(Integer[]::new);
+                equal(c.size(), a.length);
+                check(a.getClass() == Integer[].class);
+                check(Arrays.equals(c.toArray(new Integer[0]), a));
+            }
+
             check(c.equals(c));
             if (c instanceof Serializable) {
                 //System.out.printf("Serializing %s%n", c.getClass().getName());
                 try {
                     Object clone = serialClone(c);
< prev index next >