public void CheckifAddingStringReturnsCorrectValue()
        {
            HeapPriorityQueueHandler <string> priorityQueueToTest = new HeapPriorityQueueHandler <string>();

            priorityQueueToTest.Add("katt");
            Assert.AreEqual("katt", priorityQueueToTest.Pop());
        }
        public void CheckIfAddingAnIntegerWorks()
        {
            HeapPriorityQueueHandler <int> priorityQueueToTest = new HeapPriorityQueueHandler <int>();

            priorityQueueToTest.Add(5);
            Assert.AreEqual(5, priorityQueueToTest.Pop());
        }
        public void CheckifAddingMultipleStringReturnsCorrectValues()
        {
            HeapPriorityQueueHandler <string> priorityQueueToTest = new HeapPriorityQueueHandler <string>();

            priorityQueueToTest.Add("katt");
            priorityQueueToTest.Add("katter");
            priorityQueueToTest.Add("hund");
            priorityQueueToTest.Add("kladdkaka");
            priorityQueueToTest.Add("citron");
            priorityQueueToTest.Add("äpple");
            priorityQueueToTest.Add("a");
            Assert.AreEqual("a", priorityQueueToTest.Pop());
        }
        public void CheckIfPeekReturnsCorrectValue()
        {
            HeapPriorityQueueHandler <int> priorityQueueToTest = new HeapPriorityQueueHandler <int>();

            priorityQueueToTest.Add(5);
            priorityQueueToTest.Add(4);
            priorityQueueToTest.Add(10);
            priorityQueueToTest.Add(3);
            priorityQueueToTest.Add(2);
            priorityQueueToTest.Add(35);
            priorityQueueToTest.Add(1);
            priorityQueueToTest.Add(111);
            priorityQueueToTest.Add(120);
            Assert.AreEqual(1, priorityQueueToTest.Peek());
        }
        public void CheckIfCountWorks()
        {
            HeapPriorityQueueHandler <int> priorityQueueToTest = new HeapPriorityQueueHandler <int>();

            priorityQueueToTest.Add(5);
            priorityQueueToTest.Add(4);
            priorityQueueToTest.Add(10);
            priorityQueueToTest.Add(3);
            priorityQueueToTest.Add(2);
            priorityQueueToTest.Add(35);
            priorityQueueToTest.Add(1);
            priorityQueueToTest.Add(111);
            priorityQueueToTest.Add(120);
            Assert.AreEqual(9, priorityQueueToTest.Count());
        }
        public void CheckIfCountWorksIfQueueIsEmpty()
        {
            HeapPriorityQueueHandler <int> priorityQueueToTest = new HeapPriorityQueueHandler <int>();

            Assert.AreEqual(0, priorityQueueToTest.Count());
        }
        public void CheckIfPopReturnsExceptionIfQueueIsEmpty()
        {
            HeapPriorityQueueHandler <int> priorityQueueToTest = new HeapPriorityQueueHandler <int>();

            Assert.That(() => priorityQueueToTest.Pop(), Throws.InvalidOperationException);
        }