Esempio n. 1
0
def test_remove_subtree_from_document():
    '''Remove a subtree from the document.'''
    document = Document()
    root = Node('root')
    node = Node('node')
    root.children.append(node)

    document.add(root)
    document.save()

    assert root in document.roots
    assert node in root.children

    document.remove(root)
    document.save()

    assert root not in document.roots
    assert node in root.children
Esempio n. 2
0
def test_remove_node_from_document():
    '''Remove a node from the document.'''
    document = Document()
    document.add(Node('root'))
    node, = document.roots
    document.remove(node)
    assert node not in document.roots
Esempio n. 3
0
def test_save_document_with_root_node():
    '''Save a document with a root node.'''
    document = Document()
    node = Node('root')
    document.add(node)
    document.save()
    assert node.node_id == 1
    assert node.parent_id is None
Esempio n. 4
0
def test_save_document_with_child_node():
    '''Save a document with a child node.'''
    document = Document()
    root = Node('root')
    child = Node('child', parent=root)
    document.add(root)
    document.save()
    assert root.parent is None
    assert child.parent is root
    assert root.node_id == 1
    assert child.node_id == 2
    assert root.parent_id is None
    assert child.parent_id == root.node_id
Esempio n. 5
0
def test_add_and_remove_child_node():
    '''Add and remove a child node.'''
    document = Document()
    root = Node('root')
    node = Node('node')

    document.add(root)
    document.add(node)
    assert node in document.roots
    assert node not in root.children

    root.children.append(node)
    assert node not in document.roots
    assert node in root.children

    del root.children[0]
    assert node in document.roots
    assert node not in root.children

    document.remove(node)
    assert node not in document.roots
    assert node not in root.children
Esempio n. 6
0
def test_add_node_to_document():
    '''Add a node to the document.'''
    document = Document()
    document.add(Node('root'))
    node, = document.roots
    assert node.name == 'root'