def test_multiple_splits(self): tree = BinaryDecisionTree(n_features=1) split = BinaryDecisionTreeSplit(feature_id=0, value=0.0) for split_count in range(1, 10): tree.split_node(tree.leaves()[0], split) self.assertEqual(tree.num_of_leaves(), split_count + 1) print(tree)
def test_one_split(self): tree = BinaryDecisionTree(n_features=1) split = BinaryDecisionTreeSplit(feature_id=0, value=0.0) tree.split_node(0, split) self.assertEqual(tree.num_of_leaves(), 2) print(tree)
def test_empty_tree_str(self): tree = BinaryDecisionTree(n_features=1) self.assertEqual(tree.num_of_leaves(), 1) print(tree)