public void testListIteratorAdd() { ListIterator it = list.listIterator(); it.add("1"); assertEquals("[1]",list.toString()); it.add("3"); assertEquals("[1, 3]",list.toString()); it.add("5"); assertEquals("[1, 3, 5]",list.toString()); assertEquals("5",it.previous()); it.add("4"); assertEquals("[1, 3, 4, 5]",list.toString()); assertEquals("4",it.previous()); assertEquals("3",it.previous()); it.add("2"); assertEquals("[1, 2, 3, 4, 5]",list.toString()); }
public void testSubList() { list.add("A"); list.add("B"); list.add("C"); list.add("D"); list.add("E"); assertEquals("[A, B, C, D, E]",list.toString()); assertEquals("[A, B, C, D, E]",list.subList(0,5).toString()); assertEquals("[B, C, D, E]",list.subList(1,5).toString()); assertEquals("[C, D, E]",list.subList(2,5).toString()); assertEquals("[D, E]",list.subList(3,5).toString()); assertEquals("[E]",list.subList(4,5).toString()); assertEquals("[]",list.subList(5,5).toString()); }
public void testInternalState_CursorNextNextRemoveByIterator() { list.add("A"); list.add("B"); list.add("C"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals("A", c1.next()); assertEquals("B", c1.next()); c1.remove(); assertEquals(true, c1.nextIndexValid); assertEquals(1, c1.nextIndex); assertEquals(false, c1.currentRemovedByAnother); assertEquals(null, c1.current); assertEquals("C", c1.next.value); assertEquals("[A, C]", list.toString()); try { c1.remove(); fail(); } catch (IllegalStateException ex) {} }
public void testInternalState_CursorNextRemoveIndex1ByList() { list.add("A"); list.add("B"); list.add("C"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals("A", c1.next()); assertEquals("B", list.remove(1)); assertEquals(true, c1.nextIndexValid); assertEquals(1, c1.nextIndex); assertEquals(false, c1.currentRemovedByAnother); assertEquals("A", c1.current.value); assertEquals("C", c1.next.value); assertEquals("[A, C]", list.toString()); c1.remove(); // works ok assertEquals("[C]", list.toString()); try { c1.remove(); fail(); } catch (IllegalStateException ex) {} }
public void testSubListAddEnd() { list.add("A"); list.add("B"); list.add("C"); list.add("D"); list.add("E"); List sublist = list.subList(5,5); sublist.add("F"); assertEquals("[A, B, C, D, E, F]",list.toString()); assertEquals("[F]",sublist.toString()); sublist.add("G"); assertEquals("[A, B, C, D, E, F, G]",list.toString()); assertEquals("[F, G]",sublist.toString()); }
public void testSubListAddBegin() { list.add("A"); list.add("B"); list.add("C"); list.add("D"); list.add("E"); List sublist = list.subList(0,0); sublist.add("a"); assertEquals("[a, A, B, C, D, E]",list.toString()); assertEquals("[a]",sublist.toString()); sublist.add("b"); assertEquals("[a, b, A, B, C, D, E]",list.toString()); assertEquals("[a, b]",sublist.toString()); }
public void testSubListAddMiddle() { list.add("A"); list.add("B"); list.add("C"); list.add("D"); list.add("E"); List sublist = list.subList(1,3); sublist.add("a"); assertEquals("[A, B, C, a, D, E]",list.toString()); assertEquals("[B, C, a]",sublist.toString()); sublist.add("b"); assertEquals("[A, B, C, a, b, D, E]",list.toString()); assertEquals("[B, C, a, b]",sublist.toString()); }
public void testInternalState_CursorNextNextRemoveByListSetByIterator() { list.add("A"); list.add("B"); list.add("C"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals("A", c1.next()); assertEquals("B", c1.next()); list.remove(1); assertEquals(true, c1.nextIndexValid); assertEquals(1, c1.nextIndex); assertEquals(null, c1.current); assertEquals("C", c1.next.value); assertEquals("[A, C]", list.toString()); try { c1.set("Z"); fail(); } catch (IllegalStateException ex) {} }
public void testInternalState_CursorNextNextPreviousAddByIterator() { list.add("A"); list.add("B"); list.add("C"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals("A", c1.next()); assertEquals("B", c1.next()); assertEquals("B", c1.previous()); c1.add("Z"); assertEquals(true, c1.nextIndexValid); assertEquals(2, c1.nextIndex); assertEquals(null, c1.current); assertEquals("B", c1.next.value); assertEquals("[A, Z, B, C]", list.toString()); try { c1.remove(); fail(); } catch (IllegalStateException ex) {} }
public void testRemoveByIndex() { list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); assertEquals("[1, 2, 3, 4, 5]",list.toString()); assertEquals("1",list.remove(0)); assertEquals("[2, 3, 4, 5]",list.toString()); assertEquals("3",list.remove(1)); assertEquals("[2, 4, 5]",list.toString()); assertEquals("4",list.remove(1)); assertEquals("[2, 5]",list.toString()); assertEquals("5",list.remove(1)); assertEquals("[2]",list.toString()); assertEquals("2",list.remove(0)); assertEquals("[]",list.toString()); }
public void testCursorNextIndexMid() { list.add("1"); list.add("2"); list.add("3"); list.add("5"); CursorableLinkedList.Cursor c1 = list.cursor(); Iterator li = list.iterator(); // test cursors remain valid when list modified by std Iterator // test cursors skip elements removed via ListIterator assertEquals("1", li.next()); assertEquals("2", li.next()); li.remove(); assertEquals(0, c1.nextIndex()); assertEquals("1", c1.next()); assertEquals(1, c1.nextIndex()); assertEquals("3", c1.next()); }
public void testInternalState_CursorNextNextSetByIterator() { list.add("A"); list.add("B"); list.add("C"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals("A", c1.next()); assertEquals("B", c1.next()); c1.set("Z"); assertEquals(true, c1.nextIndexValid); assertEquals(2, c1.nextIndex); assertEquals("Z", c1.current.value); assertEquals("C", c1.next.value); assertEquals("[A, Z, C]", list.toString()); c1.remove(); // works ok assertEquals("[A, C]", list.toString()); try { c1.remove(); fail(); } catch (IllegalStateException ex) {} }
public void testInternalState_CursorNextAddIndex1ByList() { list.add("A"); list.add("B"); list.add("C"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals("A", c1.next()); list.add(1, "Z"); assertEquals(true, c1.nextIndexValid); assertEquals(1, c1.nextIndex); assertEquals("A", c1.current.value); assertEquals("Z", c1.next.value); assertEquals("[A, Z, B, C]", list.toString()); c1.remove(); // works ok assertEquals("[Z, B, C]", list.toString()); try { c1.remove(); fail(); } catch (IllegalStateException ex) {} }
public void testCursorNextIndexAddNext() { list.add("1"); list.add("2"); list.add("3"); list.add("5"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals(0, c1.nextIndex()); list.add(0, "0"); assertEquals(0, c1.nextIndex()); assertEquals("0", c1.next()); assertEquals(1, c1.nextIndex()); assertEquals("1", c1.next()); }
public void testCursorAdd() { CursorableLinkedList.Cursor it = list.cursor(); it.add("1"); assertEquals("[1]",list.toString()); it.add("3"); assertEquals("[1, 3]",list.toString()); it.add("5"); assertEquals("[1, 3, 5]",list.toString()); assertEquals("5",it.previous()); it.add("4"); assertEquals("[1, 3, 4, 5]",list.toString()); assertEquals("4",it.previous()); assertEquals("3",it.previous()); it.add("2"); assertEquals("[1, 2, 3, 4, 5]",list.toString()); it.close(); }
public void testCursorNextIndexFirst() { list.add("1"); list.add("2"); list.add("3"); list.add("5"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals(0, c1.nextIndex()); list.remove(0); assertEquals(0, c1.nextIndex()); assertEquals("2", c1.next()); assertEquals(1, c1.nextIndex()); assertEquals("3", c1.next()); }
public void testCursorNextIndexAddAfter() { list.add("1"); list.add("2"); list.add("3"); list.add("5"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals(0, c1.nextIndex()); list.add(1, "0"); assertEquals(0, c1.nextIndex()); assertEquals("1", c1.next()); assertEquals(1, c1.nextIndex()); assertEquals("0", c1.next()); }
public void testCursorNextIndexAddBefore() { list.add("1"); list.add("2"); list.add("3"); list.add("5"); CursorableLinkedList.Cursor c1 = list.cursor(); assertEquals(0, c1.nextIndex()); assertEquals("1", c1.next()); list.add(0, "0"); assertEquals(2, c1.nextIndex()); assertEquals("2", c1.next()); }
public void testSet() { list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); assertEquals("[1, 2, 3, 4, 5]",list.toString()); list.set(0,"A"); assertEquals("[A, 2, 3, 4, 5]",list.toString()); list.set(1,"B"); assertEquals("[A, B, 3, 4, 5]",list.toString()); list.set(2,"C"); assertEquals("[A, B, C, 4, 5]",list.toString()); list.set(3,"D"); assertEquals("[A, B, C, D, 5]",list.toString()); list.set(4,"E"); assertEquals("[A, B, C, D, E]",list.toString()); }
public void testRemoveAll() { list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); HashSet set = new HashSet(); set.add("A"); set.add("2"); set.add("C"); set.add("4"); set.add("D"); assertTrue(list.removeAll(set)); assertEquals("[1, 3, 5]",list.toString()); assertTrue(!list.removeAll(set)); }