예제 #1
0
        public void ReverseList_EmptyList_ShouldReturnNull()
        {
            ListNode node = null;

            var result = ReverseListImplementation.ReverseList(node);

            Assert.Null(result);
        }
예제 #2
0
        public void ReverseList_OneNodeList_ShouldReturnOneNodeList()
        {
            var node = new ListNode(5);

            var result = ReverseListImplementation.ReverseList(node);

            Assert.Equal(5, result.val);
            Assert.Null(result.next);
        }
예제 #3
0
        public void ReverseList_FromLeetCode_ShouldReturnReversedList()
        {
            var node = new ListNode(1);

            node.next      = new ListNode(2);
            node.next.next = new ListNode(3);
            var expectedResult = new ListNode(3);

            expectedResult.next      = new ListNode(2);
            expectedResult.next.next = new ListNode(1);

            var result = ReverseListImplementation.ReverseList(node);

            Assert.True(result.Equals(expectedResult) && expectedResult.Equals(result));
        }