Exemplo n.º 1
0
        public void TestRemove()
        {
            for (var i = 0; i < 10; i++)
            {
                list.AddLast(i);
            }
            Assert.AreEqual(0, list.First.Value);
            Assert.AreEqual(9, list.Last.Value);
            list.RemoveFirst();
            Assert.AreEqual(1, list.First.Value);
            Assert.AreEqual(9, list.Last.Value);
            list.RemoveLast();
            Assert.AreEqual(1, list.First.Value);
            Assert.AreEqual(8, list.Last.Value);
            list.Remove(4);
            list.Remove(7);
            list.Remove(8);
            list.Remove(1);
            var node = list.First;

            Assert.AreEqual(2, node.Value);
            node = node.Next;
            Assert.AreEqual(3, node.Value);
            node = node.Next;
            Assert.AreEqual(5, node.Value);
            node = node.Next;
            Assert.AreEqual(6, node.Value);
            node = node.Next;
            Assert.AreEqual(null, node);
        }