Exemplo n.º 1
0
def test_serialize(values, expected):
    def stringify(v):
        """We convert node values into string for easier comparison after
        deserialization.
        """
        if v is None:
            return v
        else:
            return str(v)

    root = build_binary_tree([stringify(v) for v in values])

    actual = serialize(root)
    assert expected == actual

    actual = deserialize(serialize(root))
    assert compare_binary_trees(root, actual)


# @pytest.mark.parametrize("serialized, expected", [
#     ("1 # #", [1]),
# ])
# def test_deserialize(serialized, expected):
#     actual = deserialize(serialized)
#     assert compare_binary_trees(build_binary_tree(expected), actual)
Exemplo n.º 2
0
def test(root, expected):
    actual = invert(build_binary_tree(root))
    assert compare_binary_trees(build_binary_tree(expected), actual)
Exemplo n.º 3
0
def test_create_balanced_bst(values, expected):
    actual = create_balanced_bst(values)
    assert compare_binary_trees(build_binary_tree(expected), actual)
Exemplo n.º 4
0
def test_deepest(root, expected):
    actual = deepest(build_binary_tree(root))
    assert expected == actual
Exemplo n.º 5
0
def test_minimum_level_sum(values, expected):
    actual = minimum_level_sum(build_binary_tree(values))
    assert expected == actual
Exemplo n.º 6
0
def test_values_at_height(node_values, height, expected):
    root = build_binary_tree(node_values)
    actual = values_at_height(root, height)
    assert expected == actual
Exemplo n.º 7
0
def test_is_bst(root, expected):
    actual = is_bst(build_binary_tree(root))
    assert expected == actual