Esempio n. 1
0
def test_promote():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    c = usertypes.TreeNode(a)
    a.promote(c)

    assert c == a.children[0]
Esempio n. 2
0
def test_adopt_child():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(None)
    a.adopt(b)

    assert a == b.parent
    assert b in a.children
Esempio n. 3
0
def test_promote_first():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    c = usertypes.TreeNode(a)
    a.promote(b)

    assert b == a.children[0]
Esempio n. 4
0
def test_reparent_root():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(None)
    a.reparent(b)

    assert b == a.parent
    assert a in b.children
Esempio n. 5
0
def test_disown_child():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    a.disown(b)

    assert b not in a.children
    assert not b.parent
Esempio n. 6
0
def test_reparent_to_root():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    b.reparent(None)

    assert None == b.parent
    assert b not in a.children
Esempio n. 7
0
def test_constructor_reparents_childs():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    c = usertypes.TreeNode(None, children=[a, b])

    assert c == a.parent
    assert c == b.parent
Esempio n. 8
0
def test_demote():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    c = usertypes.TreeNode(a)
    a.demote(b)

    assert b == a.children[-1]
Esempio n. 9
0
def test_demote_last():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    c = usertypes.TreeNode(a)
    a.demote(c)

    assert c == a.children[-1]
Esempio n. 10
0
def test_reparent_child():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    c = usertypes.TreeNode(a)
    c.reparent(b)

    assert c not in a.children
    assert b in a.children
    assert c in b.children
    assert b == c.parent
Esempio n. 11
0
def test_render_test_data_1():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)
    c = usertypes.TreeNode(a)
    d = usertypes.TreeNode(None, [a])
    e = usertypes.TreeNode(b)
    f = usertypes.TreeNode(c)
    # d -> a -> [b -> e, c -> f]

    actual = usertypes.TreeNode.render(d)
    expected = ['', '└─ ', '   ├─ ', '   │  └─ ', '   └─ ', '      └─ ']

    assert actual == expected
Esempio n. 12
0
def test_constructor_parent_adopts_node():
    a = usertypes.TreeNode(None)
    b = usertypes.TreeNode(a)

    assert b in a.children