< prev index next >

test/jdk/java/util/concurrent/tck/ArrayDequeTest.java

Print this page
8234131: Miscellaneous changes imported from jsr166 CVS 2020-12
Reviewed-by: martin


 721         assertEquals(size, a3.length);
 722         Integer[] a4 = new Integer[size];
 723         assertSame(a4, q.toArray(a4));
 724         Integer[] a5 = new Integer[size + 1];
 725         Arrays.fill(a5, 42);
 726         assertSame(a5, q.toArray(a5));
 727         Integer[] a6 = new Integer[size + 2];
 728         Arrays.fill(a6, 42);
 729         assertSame(a6, q.toArray(a6));
 730         Object[][] as = { a1, a2, a3, a4, a5, a6 };
 731         for (Object[] a : as) {
 732             if (a.length > size) assertNull(a[size]);
 733             if (a.length > size + 1) assertEquals(42, a[size + 1]);
 734         }
 735         Iterator it = q.iterator();
 736         Integer s = q.peekFirst();
 737         for (int i = 0; i < size; i++) {
 738             Integer x = (Integer) it.next();
 739             assertEquals(s + i, (int) x);
 740             for (Object[] a : as)
 741                 assertSame(a1[i], x);
 742         }
 743     }
 744 
 745     /**
 746      * toArray() and toArray(a) contain all elements in FIFO order
 747      */
 748     public void testToArray() {
 749         final int size = ThreadLocalRandom.current().nextInt(10);
 750         ArrayDeque<Integer> q = new ArrayDeque<>(size);
 751         for (int i = 0; i < size; i++) {
 752             checkToArray(q);
 753             q.addLast(i);
 754         }
 755         // Provoke wraparound
 756         int added = size * 2;
 757         for (int i = 0; i < added; i++) {
 758             checkToArray(q);
 759             assertEquals((Integer) i, q.poll());
 760             q.addLast(size + i);
 761         }




 721         assertEquals(size, a3.length);
 722         Integer[] a4 = new Integer[size];
 723         assertSame(a4, q.toArray(a4));
 724         Integer[] a5 = new Integer[size + 1];
 725         Arrays.fill(a5, 42);
 726         assertSame(a5, q.toArray(a5));
 727         Integer[] a6 = new Integer[size + 2];
 728         Arrays.fill(a6, 42);
 729         assertSame(a6, q.toArray(a6));
 730         Object[][] as = { a1, a2, a3, a4, a5, a6 };
 731         for (Object[] a : as) {
 732             if (a.length > size) assertNull(a[size]);
 733             if (a.length > size + 1) assertEquals(42, a[size + 1]);
 734         }
 735         Iterator it = q.iterator();
 736         Integer s = q.peekFirst();
 737         for (int i = 0; i < size; i++) {
 738             Integer x = (Integer) it.next();
 739             assertEquals(s + i, (int) x);
 740             for (Object[] a : as)
 741                 assertSame(a[i], x);
 742         }
 743     }
 744 
 745     /**
 746      * toArray() and toArray(a) contain all elements in FIFO order
 747      */
 748     public void testToArray() {
 749         final int size = ThreadLocalRandom.current().nextInt(10);
 750         ArrayDeque<Integer> q = new ArrayDeque<>(size);
 751         for (int i = 0; i < size; i++) {
 752             checkToArray(q);
 753             q.addLast(i);
 754         }
 755         // Provoke wraparound
 756         int added = size * 2;
 757         for (int i = 0; i < added; i++) {
 758             checkToArray(q);
 759             assertEquals((Integer) i, q.poll());
 760             q.addLast(size + i);
 761         }


< prev index next >