public void InsertedToTailTwoNodes_ShouldBeInListInRightOrder() { var list = new DblLinkedList <int>(); list.InsertTail(DblLinkedList.CreateNode(1)); list.InsertTail(DblLinkedList.CreateNode(2)); list.Tail.Value.Should().Be(2); list.Tail.Prev.Value.Should().Be(1); }
public void InsertedToTailOfEmptyListNode_ShouldBeHeadOfList() { var list = new DblLinkedList <int>(); var node = DblLinkedList.CreateNode(1); list.InsertTail(node); list.Head.Should().Be(node); }
public void ListAfterInsertingAndRemovingNode_ShouldBeEmpty() { var list = new DblLinkedList <int>(); var node = DblLinkedList.CreateNode(1); list.InsertTail(node); list.Remove(node); list.IsEmpty().Should().BeTrue(); }
public void IterativeInsertTail_ShouldProduceCorrectList(IList <int> input) { var list = new DblLinkedList <int>(); foreach (var i in input) { list.InsertTail(DblLinkedList.CreateNode(i)); } VerifyList(list, input); }
public void InsertedAfterTailNode_ShouldBecomeTheTailOfList() { var list = new DblLinkedList <int>(); list.InsertTail(DblLinkedList.CreateNode(1)); var newNode = DblLinkedList.CreateNode(3); list.InsertAfter(list.Tail, newNode); list.Tail.Value.Should().Be(newNode.Value); }