public void RemoveElementInCustomLinkedList() { var item1 = new TestReferenceValue() { Name = "Test1" }; var item2 = new TestReferenceValue() { Name = "Test2" }; var item3 = new TestReferenceValue() { Name = "Test3" }; CustomLinkedList <TestReferenceValue> list = new CustomLinkedList <TestReferenceValue> { item1, item2, item3 }; list.Remove(item2); int expectedCount = 2; TestReferenceValue expectedItem1 = item1; TestReferenceValue expectedItem2 = item3; Assert.AreEqual(expectedCount, list.Count); Assert.AreEqual(expectedItem1, list.First.Value); Assert.AreEqual(expectedItem2, list.First.NextNode.Value); }
public void CopyOfCustomLinkedList() { var item1 = new TestReferenceValue() { Name = "Test1" }; var item2 = new TestReferenceValue() { Name = "Test2" }; CustomLinkedList <TestReferenceValue> list1 = new CustomLinkedList <TestReferenceValue> { item1, item2 }; CustomLinkedList <TestReferenceValue> list2 = new CustomLinkedList <TestReferenceValue>(); foreach (var item in list1) { list2.Add(item); } list2.Remove(list2.First.Value); Assert.AreEqual(item1, list1.First.Value); foreach (var item in list1) { System.Console.WriteLine(item.Name); } foreach (var item in list2) { System.Console.WriteLine(item.Name); } }