public void TestLoopLengthIsOdd() { ListNode head = Helper.CreateLinkedList(new int[] { 1, 2, 3 }); ListNode tail = Helper.GetLastNode(head); tail.Next = head; Assert.IsTrue(FindLoopInList.Process(head)); }
public void TestLoopNotAtStart() { ListNode head = Helper.CreateLinkedList(new int[] { 1, 2, 3, 4 }); ListNode tail = Helper.GetLastNode(head); tail.Next = head.Next; Assert.IsTrue(FindLoopInList.Process(head)); }
public void TestNull() { ListNode head = null; Assert.IsFalse(FindLoopInList.Process(head)); }
public void TestOnlyOneNode() { ListNode head = new ListNode(1); Assert.IsFalse(FindLoopInList.Process(head)); }
public void TestWithoutLoop() { ListNode head = Helper.CreateLinkedList(new int[] { 1, 2, 3, 4 }); Assert.IsFalse(FindLoopInList.Process(head)); }