Пример #1
0
        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);
        }
Пример #2
0
        public void InsertedToTailOfEmptyListNode_ShouldBeHeadOfList()
        {
            var list = new DblLinkedList <int>();
            var node = DblLinkedList.CreateNode(1);

            list.InsertTail(node);
            list.Head.Should().Be(node);
        }
Пример #3
0
        public void ListAfterInsertingAndRemovingNode_ShouldBeEmpty()
        {
            var list = new DblLinkedList <int>();
            var node = DblLinkedList.CreateNode(1);

            list.InsertTail(node);
            list.Remove(node);
            list.IsEmpty().Should().BeTrue();
        }
Пример #4
0
        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);
        }
Пример #5
0
        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);
        }