@Test
public void testRemovePrevious() throws Exception {
Data[] d = {new Data(0), new Data(1), new Data(2)};
list.addAll(Arrays.asList(d));
ListIterator i = list.listIterator(list.size());
i.previous();
i.previous();
i.remove();
assertEquals(2, list.size());
assertTrue(i.hasPrevious());
assertEquals(d[0], i.previous());
assertTrue(!i.hasPrevious());
assertTrue(i.hasNext());
assertEquals(d[0], i.next());
assertTrue(i.hasNext());
assertEquals(d[2], i.next());
assertTrue(!i.hasNext());
assertTrue(i.hasPrevious());
assertEquals(2, list.size());
}