コード例 #1
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
 public void CreateQueue_EnqueueSingleElement_ShouldWorkCorrectly()
 {
     var linkedQueue = new LinkedQueue<int>();
     linkedQueue.Enqueue(3);
     Assert.AreEqual(3, linkedQueue.Peak());
     Assert.AreEqual(1, linkedQueue.Count);
 }
コード例 #2
0
        public void EnqueueDequeue_ManyChunks_ShouldWorkCorrectly()
        {
            var queue = new LinkedQueue<int>();
            const int Chunks = 1000;

            int value = 1;
            for (int i = 0; i < Chunks; i++)
            {
                Assert.AreEqual(0, queue.Count);
                var chunkSize = i + 1;
                for (int counter = 0; counter < chunkSize; counter++)
                {
                    Assert.AreEqual(value - 1, queue.Count);
                    queue.Enqueue(value);
                    Assert.AreEqual(value, queue.Count);
                    value++;
                }

                for (int counter = 0; counter < chunkSize; counter++)
                {
                    value--;
                    Assert.AreEqual(value, queue.Count);
                    queue.Dequeue();
                    Assert.AreEqual(value - 1, queue.Count);
                }

                Assert.AreEqual(0, queue.Count);
            }
        }
コード例 #3
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
        public void CreateQueue_PeakFirstElement_ShouldWorkCorrectly()
        {
            var linkedQueue = new LinkedQueue<int>();
            linkedQueue.Enqueue(2);
            linkedQueue.Enqueue(6);

            Assert.AreEqual(2, linkedQueue.Peak());
        }
コード例 #4
0
        public void Dequeue_EmptyQueue_ThrowsException()
        {
            var queue = new LinkedQueue<int>();

            queue.Dequeue();

            // Assert: expect an exception
        }
コード例 #5
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
        public void CreateQueue_EnqueueSomeElements_ShouldWorkCorrectly()
        {
            var linkedQueue = new LinkedQueue<int>();
            linkedQueue.Enqueue(2);
            linkedQueue.Enqueue(6);

            Assert.AreEqual(2, linkedQueue.Count);
            Assert.AreEqual(2, linkedQueue.Dequeue());
            Assert.AreEqual(6, linkedQueue.Dequeue());
        }
コード例 #6
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
        public void CreateQueue_DequeueSingleElement_ShouldWorkCorrectly()
        {
            var linkedQueue = new LinkedQueue<int>();
            linkedQueue.Enqueue(4);
            linkedQueue.Enqueue(6);
            linkedQueue.Enqueue(1);

            Assert.AreEqual(4, linkedQueue.Dequeue());
            Assert.AreEqual(2, linkedQueue.Count);
        }
コード例 #7
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
        public void CreateQueue_EnqueueLotsOfElements_ShouldWorkCorrectly()
        {
            var linkedQueue = new LinkedQueue<int>();
            Assert.AreEqual(0, linkedQueue.Count);

            for (int i = 0, count = 1; i < 1000; i += 2, count++)
            {
                linkedQueue.Enqueue(i);
                Assert.AreEqual(count, linkedQueue.Count);
            }
        }
コード例 #8
0
        public void Enqueue500Elements_ToArray_ShouldWorkCorrectly()
        {
            var array = Enumerable.Range(1, 500).ToArray();
            var queue = new LinkedQueue<int>();

            foreach (int element in array)
            {
                queue.Enqueue(element);
            }

            var arrayFromQueue = queue.ToArray();

            CollectionAssert.AreEqual(array, arrayFromQueue);
        }
コード例 #9
0
        public void EnqueueDequeue_1000Elements_ShouldWorkCorrectly()
        {
            const int NumberOfElements = 1000;
            var queue = new LinkedQueue<int>();

            for (int i = 0; i < NumberOfElements; i++)
            {
                queue.Enqueue(i);
            }

            for (int i = 0; i < NumberOfElements; i++)
            {
                Assert.AreEqual(NumberOfElements - i, queue.Count);
                var element = queue.Dequeue();
                Assert.AreEqual(i, element);
                Assert.AreEqual(NumberOfElements - i - 1, queue.Count);
            }
        }
コード例 #10
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
        public void CreateQueue_TestQueueEnumerable_ShouldWorkCorrectly()
        {
            var linkedQueue = new LinkedQueue<int>();
            linkedQueue.Enqueue(3);
            linkedQueue.Enqueue(7);
            linkedQueue.Enqueue(0);

            var values = new []{3, 7, 0};
            var i = 0;

            foreach (var element in linkedQueue)
            {
                Assert.AreEqual(values[i], element);
                i++;
            }
        }
コード例 #11
0
        public void Count_EmptyQueue_ShouldBeZero()
        {
            var stack = new LinkedQueue<int>();

            Assert.AreEqual(0, stack.Count);
        }
コード例 #12
0
        public void ToArray_EmptyStack_ShouldReturnEmptyArray()
        {
            var stack = new LinkedQueue<DateTime>();

            DateTime[] expected = new DateTime[0];
            var result = stack.ToArray();

            CollectionAssert.AreEqual(expected, result);
        }
コード例 #13
0
        public void Enqueue_EmptyQueue_ShouldAddElement()
        {
            var queue = new LinkedQueue<int>();

            queue.Enqueue(5);

            Assert.AreEqual(1, queue.Count);
        }
コード例 #14
0
        public void EnqueueDequeue_TypeString_ShouldWorkCorrectly()
        {
            var queue = new LinkedQueue<string>();
            var element = "some value";

            queue.Enqueue(element);
            var elementFromQueue = queue.Dequeue();

            Assert.AreEqual(0, queue.Count);
            Assert.AreEqual(element, elementFromQueue);
        }
コード例 #15
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
 public void CreateQueue_PeakEmptyQueue_ShouldThrowException()
 {
     var linkedQueue = new LinkedQueue<int>();
     linkedQueue.Peak();
 }
コード例 #16
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
        public void CreateQueue_ReturnQueueAsArray_ShouldWorkCorrectly()
        {
            var linkedQueue = new LinkedQueue<int>();
            linkedQueue.Enqueue(3);
            linkedQueue.Enqueue(7);
            linkedQueue.Enqueue(0);

            var queueArr = linkedQueue.ToArray();
            var expectedArr = new[] { 3, 7, 0 };

            CollectionAssert.AreEqual(queueArr, expectedArr);
        }
コード例 #17
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
        public void CreateEmptyQueueOfDates_ReturnQueueAsArray_ShouldWorkCorrectly()
        {
            var linkedQueue = new LinkedQueue<DateTime>();

            var queueArr = linkedQueue.ToArray();
            var expectedArr = new DateTime[] { };

            CollectionAssert.AreEqual(queueArr, expectedArr);
        }
コード例 #18
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
 public void CreateQueue_DequeueEmptyQueue_ShouldThrowException()
 {
     var linkedQueue = new LinkedQueue<int>();
     linkedQueue.Dequeue();
 }
コード例 #19
0
ファイル: LinkedQueue.cs プロジェクト: nok32/SoftUni
 public void CreateEmptyQueue_ShouldCreateSuccessfully()
 {
     var linkedQueue = new LinkedQueue<int>();
     Assert.AreEqual(0, linkedQueue.Count);
 }