def test_is_empty(self): priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator()) self.assertTrue(priorityQueue.is_empty(), "New queue should be empty") priorityQueue.add(1) self.assertFalse(priorityQueue.is_empty(), "Queue with added element shouldn't be empty") priorityQueue.pop() self.assertTrue(priorityQueue.is_empty(), "When all elements removed from a queue it should be empty")
def test_is_empty(self): priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator()) self.assertTrue(priorityQueue.is_empty(), "New queue should be empty") priorityQueue.add(1) self.assertFalse(priorityQueue.is_empty(), "Queue with added element shouldn't be empty") priorityQueue.pop() self.assertTrue( priorityQueue.is_empty(), "When all elements removed from a queue it should be empty")
def test_pop_add(self): priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator()) priorityQueue.add(5) priorityQueue.add(10) priorityQueue.add(1) priorityQueue.add(11) priorityQueue.add(3) self.assertEqual(5, priorityQueue.length()) self.assertEqual(11, priorityQueue.pop()) self.assertEqual(10, priorityQueue.pop()) self.assertEqual(5, priorityQueue.pop()) self.assertEqual(3, priorityQueue.pop()) self.assertEqual(1, priorityQueue.pop())
def test_remove_at_the_end(self): priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator()) priorityQueue.add(5) priorityQueue.add(10) priorityQueue.add(1) priorityQueue.add(11) self.assertTrue(priorityQueue.remove(1)) self.assertEqual(3, priorityQueue.length()) self.assertEqual(11, priorityQueue.pop()) self.assertEqual(10, priorityQueue.pop()) self.assertEqual(5, priorityQueue.pop())
def test_remove_in_the_middle(self): priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator()) priorityQueue.add(5) priorityQueue.add(10) priorityQueue.add(1) priorityQueue.add(11) self.assertFalse(priorityQueue.remove(50)) self.assertTrue(priorityQueue.remove(10)) self.assertEqual(3, priorityQueue.length()) self.assertEqual(11, priorityQueue.pop()) self.assertEqual(5, priorityQueue.pop()) self.assertEqual(1, priorityQueue.pop())