public void Queue_Generic_Constructor_int(int count)
        {
            PooledQueue <T> queue = new PooledQueue <T>(count);

            RegisterForDispose(queue);
            Assert.Equal(Array.Empty <T>(), queue.ToArray());
            queue.Clear();
            Assert.Equal(Array.Empty <T>(), queue.ToArray());
        }
        public void Queue_Generic_ToArray_NonWrappedQueue(int count)
        {
            PooledQueue <T> collection = new PooledQueue <T>(count + 1);

            RegisterForDispose(collection);
            AddToCollection(collection, count);
            T[] elements = collection.ToArray();
            elements.Reverse();
            Assert.True(Enumerable.SequenceEqual(elements, collection.ToArray <T>()));
        }
示例#3
0
        public void ToArray_Wrapped(bool initializeFromCollection)
        {
            // Create a queue whose head has wrapped around
            PooledQueue <string> q = CreateQueueAtCapacity(initializeFromCollection, i => i.ToString(), size: 4);

            Assert.Equal("0", q.Dequeue());
            Assert.Equal("1", q.Dequeue());
            q.Enqueue("4");
            q.Enqueue("5");
            Assert.Equal(4, q.Count);

            string[] arr = q.ToArray();
            for (int i = 0; i < 4; i++)
            {
                Assert.Equal("" + (i + 2), arr[i]);
            }
        }
        public void Queue_Generic_ToArray(int count)
        {
            PooledQueue <T> queue = GenericQueueFactory(count);

            Assert.True(queue.ToArray().SequenceEqual(queue.ToArray <T>()));
        }