public void TestRemove() { DoublyLinkedList <string> list = Create(); list.Remove(list.First); Assert.AreEqual(2, list.Count); Assert.AreEqual(list.First.Value, value1); Assert.AreEqual(list.Last.Value, value2); TestEnumerable(list, value1, value2); }
public void Test1() { DoublyLinkedList <string> list = Create(); Assert.AreEqual(3, list.Count); Assert.AreEqual(list.First.Value, value0); Assert.AreEqual(list.Last.Value, value2); TestEnumerable(list, value0, value1, value2); list.Remove(list.First); Assert.AreEqual(2, list.Count); Assert.AreEqual(list.First.Value, value1); Assert.AreEqual(list.Last.Value, value2); TestEnumerable(list, value1, value2); list.AddFirst(value0); Assert.AreEqual(3, list.Count); Assert.AreEqual(list.First.Value, value0); Assert.AreEqual(list.Last.Value, value2); TestEnumerable(list, value0, value1, value2); list.RemoveAfterNodes(list.First); Assert.AreEqual(1, list.Count); Assert.AreEqual(list.First, list.Last); Assert.AreEqual(list.First.Value, value0); Assert.AreEqual(list.Last.Value, value0); TestEnumerable(list, value0); var node0 = list.First; var node1 = list.AddAfter(node0, value2); Assert.AreEqual(2, list.Count); Assert.AreEqual(list.First.Value, value0); Assert.AreEqual(list.Last.Value, value2); TestEnumerable(list, value0, value2); node0 = list.AddBefore(node1, value1); Assert.AreEqual(3, list.Count); Assert.AreEqual(list.First.Value, value0); Assert.AreEqual(list.Last.Value, value2); TestEnumerable(list, value0, value1, value2); list.RemoveBeforNodes(node0); Assert.AreEqual(2, list.Count); Assert.AreEqual(list.First.Value, value1); Assert.AreEqual(list.Last.Value, value2); TestEnumerable(list, value1, value2); }