public void testFailingHasNextBug() { FilterListIterator filtered = new FilterListIterator(list.listIterator(),fourPred); ListIterator expected = fours.listIterator(); while(expected.hasNext()) { expected.next(); filtered.next(); } assertTrue(filtered.hasPrevious()); assertTrue(!filtered.hasNext()); assertEquals(expected.previous(),filtered.previous()); }
assertEquals(new Integer(18),filtered.previous()); assertEquals(new Integer(15),filtered.previous()); assertEquals(new Integer(12),filtered.previous()); assertEquals(new Integer(9),filtered.previous()); assertEquals(new Integer(6),filtered.previous()); assertEquals(new Integer(3),filtered.previous()); assertEquals(new Integer(0),filtered.previous()); assertEquals(new Integer(18),filtered.previous()); assertEquals(new Integer(15),filtered.previous()); assertEquals(new Integer(12),filtered.previous()); assertEquals(new Integer(9),filtered.previous()); assertEquals(new Integer(6),filtered.previous()); assertEquals(new Integer(3),filtered.previous()); assertEquals(new Integer(0),filtered.previous()); assertEquals(new Integer(0),filtered.previous()); assertEquals(new Integer(0),filtered.next()); assertEquals(new Integer(6),filtered.previous()); assertEquals(new Integer(3),filtered.previous()); assertEquals(new Integer(3),filtered.next()); assertEquals(new Integer(6),filtered.next()); assertEquals(new Integer(12),filtered.next()); assertEquals(new Integer(15),filtered.next()); assertEquals(new Integer(15),filtered.previous()); assertEquals(new Integer(12),filtered.previous()); assertEquals(new Integer(9),filtered.previous());