def test_height(self): # rightmost leaf node = BinaryNode(0) assert node.is_leaf() is True assert node.height() == 0 node.left = BinaryNode(1) assert node.height() == 1 node.left.left = BinaryNode(2) assert node.height() == 2 node.left.left.left = BinaryNode(3) assert node.height() == 3 # rightmost leaf node = BinaryNode(0) node.left = None node.right = None assert node.is_leaf() is True assert node.height() == 0 node.right = BinaryNode(1) assert node.height() == 1 node.right.right = BinaryNode(2) assert node.height() == 2 node.right.right.right = BinaryNode(3) assert node.height() == 3
def test_is_leaf(self): # Create node with no children node = BinaryNode(2) assert node.is_leaf() is True # Attach left child node node.left = BinaryNode(1) assert node.is_leaf() is False # Attach right child node node.right = BinaryNode(3) assert node.is_leaf() is False # Detach left child node node.left = None assert node.is_leaf() is False # Detach right child node node.right = None assert node.is_leaf() is True