def setUp(self): self.binaryHeap = BinaryMinHeap(8)
class Test(unittest.TestCase): def setUp(self): self.binaryHeap = BinaryMinHeap(8) def tearDown(self): self.binaryHeap = None def testGetSizeOnEmptyHeap(self): size = self.binaryHeap.getSize() self.assertTrue(size == 0) def testGetSizeOnNonEmptyHeap(self): self.binaryHeap.insert(1) self.binaryHeap.insert(2) self.binaryHeap.insert(3) string = self.binaryHeap.toString() self.assertTrue(self.binaryHeap.getSize() == 3) self.assertTrue(string == "Binary Min Heap with elements:\n 1\n 2 3") def testInsertToEmptyHeap(self): self.binaryHeap.insert(3) string = self.binaryHeap.toString() self.assertTrue(self.binaryHeap.getSize() == 1) self.assertTrue(string == "Binary Min Heap with elements:\n 3") def testInsertToNonEmptyHeap(self): self.binaryHeap.insert(1) self.binaryHeap.insert(4) self.binaryHeap.insert(5) self.binaryHeap.insert(3) self.binaryHeap.insert(6) self.binaryHeap.insert(7) self.binaryHeap.insert(0) self.binaryHeap.insert(2) string = self.binaryHeap.toString() print(string) self.assertTrue(self.binaryHeap.getSize() == 8) self.assertTrue(string == "Binary Min Heap with elements:\n 0\n 2 1\n 3 6 7 5\n 4") def testExtractMinFromEmptyHeap(self): self.assertTrue(self.binaryHeap.getSize() == 0) self.assertTrue(self.binaryHeap.extractMin() == "ERROR") def testExtractMinFromNonEmptyHeap(self): self.binaryHeap.insert(4) self.binaryHeap.insert(3) self.binaryHeap.insert(1) self.binaryHeap.insert(2) minE = self.binaryHeap.extractMin() string = self.binaryHeap.toString() self.assertTrue(self.binaryHeap.getSize() == 3) self.assertTrue(minE == 1) self.assertTrue(string == "Binary Min Heap with elements:\n 2\n 3 4") def testDeleteFromEmptyHeap(self): self.assertTrue(self.binaryHeap.getSize() == 0) self.assertTrue(self.binaryHeap.delete(1) == "ERROR") def testDeleteFromNonEmptyHeap(self): self.binaryHeap.insert(2) self.binaryHeap.insert(3) self.binaryHeap.insert(4) self.binaryHeap.insert(1) self.binaryHeap.delete(3) string = self.binaryHeap.toString() self.assertTrue(self.binaryHeap.getSize() == 3) self.assertTrue(string == "Binary Min Heap with elements:\n 1\n 4 2") def testDecreaseKeyFromEmptyHeap(self): self.binaryHeap.decreaseKey(1, 3) self.assertTrue(self.binaryHeap.getSize() == 0) def testDecreaseKeyFromNonEmptyHeap(self): self.binaryHeap.insert(4) self.binaryHeap.insert(2) self.binaryHeap.insert(3) self.binaryHeap.decreaseKey(4, 1) string = self.binaryHeap.toString() self.assertTrue(self.binaryHeap.getSize() == 3) self.assertTrue(string == "Binary Min Heap with elements:\n 1\n 2 3")