コード例 #1
0
 public void DeleteNodeTest1()
 {
     //[1] 2 3 4 5
     node1.Delete();
     Assert.IsNull(node2.Previous);
     Assert.IsNull(node1.Next);
 }
コード例 #2
0
 public void DeleteTest()
 {
     node1.AddAfter(node2);
     node2.AddAfter(node3);
     node3.AddAfter(node4);
     node4.AddAfter(node5);
     // [1] 2 3 4 5
     node1.Delete();
     Assert.IsNull(node2.Previous);
     Assert.IsNull(node1.Next);
     Assert.IsNull(node1.Previous);
     //2 [3] 4 5
     node3.Delete();
     Assert.IsNull(node2.Previous);
     Assert.AreEqual(node4, node2.Next);
     Assert.AreEqual(node2, node4.Previous);
     Assert.AreEqual(node5, node4.Next);
     //2 [4] 5
     node4.Delete();
     Assert.IsNull(node2.Previous);
     Assert.AreEqual(node5, node2.Next);
     Assert.AreEqual(node2, node5.Previous);
     Assert.IsNull(node5.Next);
     //2 [5]
     node5.Delete();
     Assert.IsNull(node2.Previous);
     Assert.IsNull(node2.Next);
     Assert.AreEqual(null, node5.Previous);
     Assert.IsNull(node5.Next);
 }
コード例 #3
0
        public void DeleteTest()
        {
            // [1] 2 3 4 5 6
            node1.Delete();

            Assert.IsNull(node1.Previous);
            Assert.IsNull(node1.Next);
            Assert.AreEqual(node2, node3.Previous);
            Assert.AreEqual(node3, node2.Next);
            Assert.IsNull(node2.Previous);


            //  2 3 4 5 [6]
            node6.Delete();

            Assert.IsNull(node6.Previous);
            Assert.IsNull(node6.Next);
            Assert.AreEqual(node4, node5.Previous);
            Assert.AreEqual(node5, node4.Next);
            Assert.IsNull(node5.Next);


            // 2 3 [4] 5
            node4.Delete();

            Assert.IsNull(node4.Previous);
            Assert.IsNull(node4.Next);
            Assert.AreEqual(node3, node2.Next);
            Assert.AreEqual(node2, node3.Previous);
            Assert.AreEqual(node3, node5.Previous);
            Assert.AreEqual(node5, node3.Next);
            Assert.IsNull(node5.Next);
        }
コード例 #4
0
        public void Delete()
        {
            // 1 2 3  原来的顺序
            //[1] 2 3
            node1.Delete(node1);
            Assert.IsNull(node2.Previous);
            Assert.AreEqual(node3, node2.Next);
            Assert.AreEqual(node2, node3.Previous);

            // 1  [2] 3
            node2.Delete(node2);
            Assert.IsNull(node1.Previous);
            Assert.AreEqual(node3, node1.Next);
            Assert.AreEqual(node1, node3.Previous);

            // 1  2 [3]
            node3.Delete(node3);
            Assert.IsNull(node1.Previous);
            Assert.AreEqual(node2, node1.Next);
            Assert.AreEqual(node1, node2.Previous);

            // 只有一个
            node2.Delete(node2);
            node3.Delete(node3);
            Assert.IsNull(node1.Previous);
            Assert.IsNull(node1.Next);
        }