public void EnumerableTest() { ActiveList <int> list = new ActiveList <int>(); for (int i = 0; i < 10; i++) { list.AddLast(i); } Iterable <int> active = list; var next = active.First; for (var node = next; node != null; node = next) { next = node.Next; if (node.Value == 5) { list.AddAfter(list.First, 22); } } StringBuilder sb = new StringBuilder(); next = active.First; for (var node = next; node != null; node = next) { next = node.Next; sb.Append(node.Value); sb.Append(", "); } Assert.AreEqual("0, 22, 1, 2, 3, 4, 5, 6, 7, 8, 9, ", sb.ToString()); }