package cn.net.pikachu.basic; import org.junit.Assert; import org.junit.Before; import org.junit.Test; /** * Created by pikachu on 17-2-25. */ public class LinkedListTest { LinkedList list; @Before public void before(){ list = new LinkedList(); } @Test public void testAdd(){ list.add(1); Assert.assertEquals("[1]",list.toString()); Assert.assertEquals(1,list.size()); list.add(0,0); Assert.assertEquals("[0,1]",list.toString()); Assert.assertEquals(2,list.size()); } @Test(expected = IndexOutOfBoundsException.class) public void testRemove(){ list.add(1); list.remove(0); Assert.assertEquals("[]",list.toString()); Assert.assertEquals(0,list.size()); list.add(2); list.add(3); list.add(4); Object o =list.remove(1); Assert.assertEquals(3,o); Assert.assertEquals("[2,4]",list.toString()); Assert.assertEquals(2,list.size()); list.remove(4); } @Test(expected = IndexOutOfBoundsException.class) public void testGet(){ list.add(1); list.add(2); list.add(3); list.add(4); Assert.assertEquals(1,list.get(0)); Assert.assertEquals(4,list.get(3)); Assert.assertEquals(4,list.size()); list.get(4); } @Test public void testAddFirst(){ list.add(1); list.add(2); list.add(3); list.addFirst(0); Assert.assertEquals(4,list.size()); Assert.assertEquals(0,list.get(0)); Assert.assertEquals("[0,1,2,3]",list.toString()); } @Test public void testAddLast(){ list.add(1); list.add(2); list.add(3); list.addLast(4); Assert.assertEquals(4,list.size()); Assert.assertEquals(4,list.get(3)); Assert.assertEquals("[1,2,3,4]",list.toString()); } @Test public void testRemoveFirst(){ list.add(1); list.add(2); list.add(3); list.removeFirst(); Assert.assertEquals(2,list.size()); Assert.assertEquals("[2,3]",list.toString()); } @Test public void testRemoveLast(){ list.add(1); list.add(2); list.add(3); list.removeLast(); Assert.assertEquals(2,list.size()); Assert.assertEquals("[1,2]",list.toString()); } @Test public void testSize(){ Assert.assertEquals(0,list.size()); list.add(1); list.add(2); list.add(3); list.add(4); Assert.assertEquals(4,list.size()); } @Test public void testIterator(){ list.add(1); list.add(2); list.add(3); list.add(4); Iterator iterator = list.iterator(); StringBuilder builder = new StringBuilder(); builder.append("["); while (iterator.hasNext()){ builder.append(iterator.next()).append(","); } builder.deleteCharAt(builder.length()-1); builder.append("]"); Assert.assertEquals(builder.toString(),list.toString()); } }