Ejemplo n.º 1
0
def test_tree_node_nested(patch):
    patch.object(Tree, "walk")
    tree = Tree("rule", [])
    result = tree.node("inner.nested")
    assert len(Tree.walk.call_args_list) == 2
    assert Tree.walk.call_args_list[0] == call(tree, "inner")
    assert Tree.walk.call_args_list[1] == call(Tree.walk(), "nested")
    assert result == Tree.walk()
Ejemplo n.º 2
0
def test_tree_walk_token():
    """
    Ensures that encountered tokens are skipped
    """
    inner_tree = Tree("inner", [])
    tree = Tree("rule", [Token("test", "test"), inner_tree])
    result = Tree.walk(tree, "inner")
    assert result == inner_tree
Ejemplo n.º 3
0
def test_tree_node(patch):
    patch.object(Tree, "walk")
    tree = Tree("rule", [])
    result = tree.node("inner")
    Tree.walk.assert_called_with(tree, "inner")
    assert result == Tree.walk()
Ejemplo n.º 4
0
def test_tree_walk():
    inner_tree = Tree("inner", [])
    tree = Tree("rule", [inner_tree])
    result = Tree.walk(tree, "inner")
    assert result == inner_tree