Example #1
0
        public void QueueEnqueueWithIEnumerableWorksCorrectly()
        {
            //Arrange
            var queue    = new StaticPriorityQueue <string>();
            var expected = new string[] { "add '1", "add '2", "add '3", "add '4" };

            //Act
            queue.Enqueue(expected);
            var result = queue.ToArray();

            //Assert
            CollectionAssert.AreEquivalent(expected, result);
        }
Example #2
0
        public void QueueToArrayWorksCorrectly()
        {
            //Arrange
            var queue    = new StaticPriorityQueue <string>();
            var expected = new string[] { "add '1", "add '2", "add '3", "add '4", "add '5", "add '6", "add '7" };

            //Act
            queue.Enqueue(1, "add '1");
            queue.Enqueue(0, "add '2");
            queue.Enqueue(0, "add '3");
            queue.Enqueue(2, "add '4");
            queue.Enqueue(3, "add '5");
            queue.Enqueue(7, "add '6");
            queue.Enqueue(9, "add '7");

            var result = queue.ToArray();

            //Assert
            CollectionAssert.AreEquivalent(expected, result);
        }
Example #3
0
        public void QueueEnqueueWithPriorityAndIEnumerableWorksCorrectly()
        {
            //Arrange
            var queue               = new StaticPriorityQueue <string>();
            var input               = new string[] { "add '1", "add '2", "add '3", "add '4" };
            var expected            = new string[] { "add '2", "add '3", "add '4", "add '5", "add '6" };
            var expectedElement     = "add '1";
            var expectedNextElement = "add '2";

            //Act
            queue.Enqueue(2, input);
            queue.Enqueue(1, "add '5");
            queue.Enqueue(1, "add '6");
            var element = queue.Peek();

            queue.Dequeue();
            var nextElement = queue.Peek();
            var result      = queue.ToArray();

            //Assert
            CollectionAssert.AreEquivalent(expected, result);
            Assert.AreEqual(expectedElement, element);
            Assert.AreEqual(expectedNextElement, nextElement);
        }