示例#1
0
def test_remove_child():
    animal = Category(name='animal')
    cat = Category(name='cat')
    cat._parent = animal
    dog = Category(name='dog')
    dog._parent = animal
    animal._children = [cat, dog]

    animal._remove_child(cat)
    assert animal._children == [dog]
    assert cat.parent is None
示例#2
0
def test_add_parent():
    # add on top of root
    animal = Category(name='animal')
    cat = Category(name='cat')
    cat._add_parent(animal)

    assert cat.parent is animal
    assert animal.children == [cat]

    # add instead of previous parent
    animal = Category(name='animal')
    lion = Category(name='lion')
    animal._children = [lion]
    lion._parent = animal

    cat = Category(name='cat')
    lion._add_parent(cat)

    assert lion.parent is cat
    assert cat.children == [lion]
    assert animal.children == [cat]
示例#3
0
def test_get_parent():
    animal = Category(name='animal')
    cat = Category(name='cat')
    cat._parent = animal
    assert cat.parent == animal