public void RemoveNthFromEndTest_ListNull()
        {
            var solution = new _019_RemoveNthNodeFromEndOfList();
            var result   = solution.RemoveNthFromEnd(null, 2);

            Assert.IsNull(result);
        }
        public void RemoveNthFromEndTest_ListNull()
        {
            var solution = new _019_RemoveNthNodeFromEndOfList();
            var result = solution.RemoveNthFromEnd(null, 2);

            Assert.IsNull(result);
        }
        public void RemoveNthFromEndTest()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _019_RemoveNthNodeFromEndOfList();
            var result   = solution.RemoveNthFromEnd(input, 2);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 5 }, result);
        }
        public void RemoveNthFromEndTest_NLessThanZero()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _019_RemoveNthNodeFromEndOfList();
            var result   = solution.RemoveNthFromEnd(input, -1);

            Assert.IsNull(result);
        }
        public void RemoveNthFromEndTest_NLessThanZero()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _019_RemoveNthNodeFromEndOfList();
            var result = solution.RemoveNthFromEnd(input, -1);

            Assert.IsNull(result);
        }
        public void RemoveNthFromEndTest_LastOne()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _019_RemoveNthNodeFromEndOfList();
            var result = solution.RemoveNthFromEnd(input, 1);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 4 }, result);
        }