public void TestSortFirst() { list.SortFirst(3, (x, y) => x - y); Assert.AreEqual(1, list.Count); list.SortFirst(2, (x, y) => x - y); Assert.AreEqual(2, list.Count); list.SortFirst(5, (x, y) => x - y); Assert.AreEqual(3, list.Count); list.SortFirst(4, (x, y) => x - y); Assert.AreEqual(4, list.Count); list.SortFirst(1, (x, y) => x - y); Assert.AreEqual(5, list.Count); var node = list.First; Assert.AreEqual(1, node.Value); node = node.Next; Assert.AreEqual(2, node.Value); node = node.Next; Assert.AreEqual(3, node.Value); node = node.Next; Assert.AreEqual(4, node.Value); node = node.Next; Assert.AreEqual(5, node.Value); }