def test_calculate_balance_2(self): set = UnbalancedSet(55).insert(56).insert(57).insert(58).insert( 59).insert(51).insert(50).insert(49) height1 = [] for node in set._UnbalancedSet__root: height1.append(height(node)) self.assertEqual(height1, [1, 2, 3, 5, 4, 3, 2, 1])
def test_calculate_balance_factor(self): set = UnbalancedSet(9).insert(5).insert(1).insert(6).insert(10) set = set.insert(11).insert(13) balanceFactor = [] for node in set._UnbalancedSet__root: balanceFactor.append(height(node)) self.assertEqual(balanceFactor, [1, 2, 1, 4, 3, 2, 1])
def test_calculate_balance_factor_all_right_nodes_one_left(self): set = UnbalancedSet(55).insert(56).insert(57).insert(58).insert( 59).insert(51) balanceFactors = [] for node in set._UnbalancedSet__root: balanceFactors.append(height(node)) self.assertEqual(balanceFactors, [1, 5, 4, 3, 2, 1])
def test3_preorder_iteration_and_height(self): set = UnbalancedSet(30, iterator='preorder').insert(10).insert(20) self.assertEqual(set, [30, 10, 20]) height1 = [] for node in set._UnbalancedSet__root: height1.append(height(node)) self.assertEqual(height1, [3, 2, 1])
def test_calculate_balance_factor_all_right_nodes(self): set = PersistentBalancedSet(55).insert(56).insert(57).insert( 58).insert(59) balanceFactors = [] for node in set._PersistentBalancedSet__root: balanceFactors.append(height(node)) self.assertEqual(balanceFactors, [1, 2, 3, 2, 1])
def test3_preorder_iteration_and_height(self): set = PersistentBalancedSet(30, iterator='preorder').insert(10).insert(20) self.assertEqual(set, [20, 10, 30]) height1 = [] for node in set._PersistentBalancedSet__root: height1.append(height(node)) self.assertEqual(height1, [2, 1, 1])
def test_calculate_balance_factor_all_left_nodes(self): set = UnbalancedSet(55).insert(54).insert(53).insert(52).insert(51) balanceFactors = [] node_values = [] for node in set._UnbalancedSet__root: node_values.append(node.value) balanceFactors.append(height(node)) self.assertEqual(balanceFactors, [1, 2, 3, 4, 5]) self.assertEqual(node_values, [51, 52, 53, 54, 55])
def test_calculate_balance_factor_all_left_node_one_right(self): set = PersistentBalancedSet(55).insert(54).insert(53).insert( 52).insert(51).insert(59) balanceFactors = [] node_values = [] for node in set._PersistentBalancedSet__root: node_values.append(node.value) balanceFactors.append(height(node)) self.assertEqual(balanceFactors, [1, 2, 1, 3, 2, 1]) self.assertEqual(node_values, [51, 52, 53, 54, 55, 59])