Exemplo n.º 1
0
        public void QueueArray_Basic()
        {
            QueueArray <int> queue = new QueueArray <int>();

            queue.Enqueue(0);
            queue.Enqueue(1);
            queue.Enqueue(2);
            CollectionAssert.AreEqual(new int[] { 0, 1, 2 }, queue.ToArray());
            Assert.AreEqual(3, queue.Count);
            Assert.AreEqual(0, queue[0]);
            Assert.AreEqual(1, queue[1]);
            Assert.AreEqual(2, queue[2]);

            Assert.AreEqual(0, queue.Peek());
            Assert.AreEqual(3, queue.Count);

            Assert.AreEqual(0, queue.Dequeue());
            CollectionAssert.AreEqual(new int[] { 1, 2 }, queue.ToArray());
            Assert.AreEqual(2, queue.Count);
            Assert.AreEqual(1, queue[0]);
            Assert.AreEqual(2, queue[1]);

            Assert.AreEqual(1, queue.Dequeue());
            CollectionAssert.AreEqual(new int[] { 2 }, queue.ToArray());
            Assert.AreEqual(1, queue.Count);
            Assert.AreEqual(2, queue[0]);

            Assert.AreEqual(2, queue.Dequeue());
            CollectionAssert.AreEqual(new int[] { }, queue.ToArray());
            Assert.AreEqual(0, queue.Count);
        }
Exemplo n.º 2
0
        public void QueueArray_InsertAt()
        {
            QueueArray <int> queue = new QueueArray <int>();

            queue.InsertAt(0, 0);
            CollectionAssert.AreEqual(new int[] { 0 }, queue.ToArray());
            queue.InsertAt(1, 1);
            CollectionAssert.AreEqual(new int[] { 0, 1 }, queue.ToArray());
            queue.InsertAt(2, 2);
            CollectionAssert.AreEqual(new int[] { 0, 1, 2 }, queue.ToArray());
            queue.InsertAt(0, -2);
            CollectionAssert.AreEqual(new int[] { -2, 0, 1, 2 }, queue.ToArray());
            queue.InsertAt(1, -1);
            CollectionAssert.AreEqual(new int[] { -2, -1, 0, 1, 2 }, queue.ToArray());
        }
Exemplo n.º 3
0
        public void QueueArray_RemoveAt()
        {
            QueueArray <int> queue = new QueueArray <int>();

            queue.Enqueue(0);
            queue.Enqueue(1);
            queue.Enqueue(2);
            queue.Enqueue(3);
            queue.Enqueue(4);
            queue.Enqueue(5);

            queue.RemoveAt(0);
            CollectionAssert.AreEqual(new int[] { 1, 2, 3, 4, 5 }, queue.ToArray());

            queue.RemoveAt(queue.Count - 1);
            CollectionAssert.AreEqual(new int[] { 1, 2, 3, 4 }, queue.ToArray());

            queue.RemoveAt(2);
            CollectionAssert.AreEqual(new int[] { 1, 2, 4 }, queue.ToArray());
        }