package test.com.java.xiaoqin.linkedlist; import com.java.xiaoqin.linkedlist.QIterator; import com.java.xiaoqin.linkedlist.QLinkedList; import org.junit.Assert; import org.junit.Test; import org.junit.Before; import org.junit.After; import java.util.Arrays; /** * QLinkedList Tester. * * @author <Authors name> * @version 1.0 * @since <pre>三月 7, 2017</pre> */ public class QLinkedQListTest { QLinkedList linkedList = null; @Before public void before() throws Exception { linkedList = new QLinkedList(); } @After public void after() throws Exception { linkedList = null; } /** * Method: add(Object o) */ @Test public void testAddO() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); System.out.println(linkedList.toString()); } /** * Method: add(int index, Object o) */ @Test public void testAddForIndexO() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); linkedList.add(3, "10"); System.out.println(linkedList.toString()); } /** * Method: get(int index) */ @Test public void testGet() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); System.out.println(linkedList.get(1)); } /** * Method: remove(int index) */ @Test public void testRemoveIndex() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); System.out.println(linkedList.remove(1)); System.out.println(linkedList.toString()); } /** * Method: size() */ @Test public void testSize() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); System.out.println(linkedList.size()); } /** * Method: addFirst(Object o) */ @Test public void testAddFirst() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); linkedList.addFirst("0"); System.out.println(linkedList); } /** * Method: addLast(Object o) */ @Test public void testAddLast() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); linkedList.addLast("4"); System.out.println(linkedList); } /** * Method: removeFirst() */ @Test public void testRemoveFirst() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); linkedList.removeFirst(); System.out.println(linkedList); Assert.assertEquals(2, linkedList.size()); } /** * Method: removeLast() */ @Test public void testRemoveLast() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); linkedList.removeLast(); System.out.println(linkedList); Assert.assertEquals(2, linkedList.size()); } /** * Method: iterator() */ @Test public void testIterator() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); QIterator iterator = linkedList.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } Assert.assertEquals(3, linkedList.size()); } /** * Method: reverse() */ @Test public void testReverse() throws Exception { linkedList.add("1"); linkedList.add("2"); linkedList.add("3"); linkedList.reverse(); System.out.println(linkedList); } /** * Method: removeFirstHalf() */ @Test public void testRemoveFirstHalf() throws Exception { linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.removeFirstHalf(); System.out.println(linkedList); Assert.assertEquals(2, linkedList.size()); before(); linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.add(10); linkedList.removeFirstHalf(); System.out.println(linkedList); Assert.assertEquals(3, linkedList.size()); } /** * Method: remove(int i, int length) */ @Test public void testRemoveForILength() throws Exception { linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.add(10); linkedList.remove(0, 2); System.out.println(linkedList); Assert.assertEquals(2, linkedList.size()); } /** * Method: getElements(QLinkedList list) */ @Test public void testGetElements() throws Exception { linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.add(10); QLinkedList qLinkedList = new QLinkedList(); qLinkedList.add(2); qLinkedList.add(3); qLinkedList.add(4); int[] elements = linkedList.getElements(qLinkedList); System.out.println(Arrays.toString(elements)); } /** * Method: subtract(QLinkedList list) */ @Test public void testSubtract() throws Exception { linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.add(10); QLinkedList qLinkedList = new QLinkedList(); qLinkedList.add(5); qLinkedList.add(8); linkedList.subtract(qLinkedList); System.out.println(linkedList); } /** * Method: removeDuplicateValues() */ @Test public void testRemoveDuplicateValues() throws Exception { linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.add(10); linkedList.removeDuplicateValues(); System.out.println(linkedList); } /** * Method: removeRange(int min, int max) */ @Test public void testRemoveRange() throws Exception { linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.add(10); linkedList.removeRange(5,9); System.out.println(linkedList); } /** * Method: intersection(QLinkedList list) */ @Test public void testIntersection() throws Exception { linkedList.add(2); linkedList.add(5); linkedList.add(7); linkedList.add(8); linkedList.add(10); QLinkedList qLinkedList = new QLinkedList(); qLinkedList.add(4); qLinkedList.add(5); qLinkedList.add(7); System.out.println(linkedList.intersection(qLinkedList)); } }