document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. import unittest
  2. from avltree import AVLTree
  3.  
  4. class TestAVLTree(unittest.TestCase):
  5.    
  6.     def setup(self):
  7.         #balanced tree
  8.         self.tree = AVLTree()
  9.         self.tree.put(5,"five")
  10.         self.tree.put(4,"four")
  11.         self.tree.put(6,"six")
  12.        
  13.     def test_rotate(self):
  14.         #left rotation
  15.         tree = AVLTree()
  16.         tree.put(5,"five")
  17.         tree.put(6,"six")
  18.         self.assertEqual(tree.root.key, 5)
  19.         tree.put(7,"seven")
  20.         self.assertEqual(tree.root.key, 6)
  21.         self.assertEqual(tree.root.leftChild.key, 5)
  22.         self.assertEqual(tree.root.rightChild.key, 7)
  23.        
  24.         #right rotation
  25.         tree2 = AVLTree()
  26.         tree2.put(5,"five")
  27.         tree2.put(4,"four")
  28.         self.assertEqual(tree2.root.key, 5)
  29.         tree2.put(3,"three")
  30.         self.assertEqual(tree2.root.key, 4)
  31.         self.assertEqual(tree2.root.leftChild.key, 3)
  32.         self.assertEqual(tree2.root.rightChild.key, 5)
  33.        
  34.     def test_remove(self):
  35.         self.setup()
  36.         self.tree.put(3,"three")
  37.         self.tree.put(7,"seven")
  38.         print(self.tree.getAsList())
  39.         del self.tree[3]
  40.         print(self.tree.getAsList())
  41.         self.assertTrue(self.tree.checkIfBalanced())
  42.            
  43. if __name__ == "__main__":
  44.     unittest.main()
');