Exemple #1
0
        public void AddNullItem()
        {
            var list = new CircularDoublyLinkedList <string>();

            list.AddFirst(null);
            list.AddLast(null);
            list.AddAfter(null, null);
            list.AddBefore(null, null);
            Assert.AreEqual(list.Count(), 4, "invalid count");
            list.Remove(null);
            list.RemoveFirst();
            list.RemoveLast();
            Assert.AreEqual(list.Count(), 1, "invalid count");
        }
        public override void CopyTo(T[] array, int index)
        {
            if (array == null)
            {
                throw new ArgumentNullException(nameof(array));
            }

            if (index < 0 || index > array.Length)
            {
                throw new ArgumentOutOfRangeException(nameof(index));
            }

            if (array.Length - index < items.Count())
            {
                throw new ArgumentException(nameof(index));
            }

            items.CopyTo(array, index);
        }
Exemple #3
0
        public void AddFiveNodesHead()
        {
            for (int i = 1; i <= 5; i++)
            {
                circularDoublyLinkedList.AddFirst(i);
            }

            Assert.AreEqual(circularDoublyLinkedList.GetFirst(), 5, "invalid head element");
            Assert.AreEqual(circularDoublyLinkedList.GetLast(), 1, "invalid tail element");
            Assert.AreEqual(circularDoublyLinkedList.Count(), 5, "invalid count");
        }