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
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]
def test_get_parent(): animal = Category(name='animal') cat = Category(name='cat') cat._parent = animal assert cat.parent == animal