1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.collections4;
18
19 import static org.junit.jupiter.api.Assertions.assertEquals;
20 import static org.junit.jupiter.api.Assertions.assertThrows;
21 import static org.junit.jupiter.api.Assertions.assertTrue;
22
23 import java.util.ArrayList;
24
25 import org.apache.commons.collections4.list.AbstractListTest;
26 import org.junit.jupiter.api.Test;
27
28
29
30
31 public abstract class AbstractArrayListTest<E> extends AbstractListTest<E> {
32
33
34
35
36 @Override
37 public abstract ArrayList<E> makeObject();
38
39 @Test
40 public void testNewArrayList() {
41 final ArrayList<E> list = makeObject();
42 assertTrue(list.isEmpty(), "New list is empty");
43 assertEquals(0, list.size(), "New list has size zero");
44
45 assertThrows(IndexOutOfBoundsException.class, () -> list.get(1));
46 }
47
48 @Test
49 @SuppressWarnings("unchecked")
50 public void testSearch() {
51 final ArrayList<E> list = makeObject();
52 list.add((E) "First Item");
53 list.add((E) "Last Item");
54 assertEquals("First Item", list.get(0), "First item is 'First Item'");
55 assertEquals("Last Item", list.get(1), "Last Item is 'Last Item'");
56 }
57
58 }