示例#1
0
    def test_extend_with_children(self):
        CHILD1_NAME = 'FirstChild'
        child1 = Base.PanObject(CHILD1_NAME)
        child1.parent = self.obj

        self.obj.children = [
            child1,
        ]

        CHILD2_NAME = 'SecondChild'
        child2 = Base.PanObject(CHILD2_NAME)

        CHILD3_NAME = 'ThirdChild'
        child3 = Base.PanObject(CHILD3_NAME)

        new_children = [child2, child3]
        all_children = [child1, child2, child3]

        ret_val = self.obj.extend(new_children)

        self.assertIsNone(ret_val)
        self.verify_object(self.obj, name=OBJECT_NAME, children=all_children)
        self.verify_object(child1, name=CHILD1_NAME, parent=self.obj)
        self.verify_object(child2, name=CHILD2_NAME, parent=self.obj)
        self.verify_object(child3, name=CHILD3_NAME, parent=self.obj)
示例#2
0
    def test_remove(self):
        CHILD1_NAME = 'Child1'
        child1 = Base.PanObject(CHILD1_NAME)
        child1.parent = self.obj

        CHILD2_NAME = 'Child2'
        child2 = Base.PanObject(CHILD2_NAME)
        child2.parent = self.obj

        self.obj.children = [child1, child2]

        ret_val = self.obj.remove(child2)

        self.assertIsNone(ret_val)
        self.verify_object(
            self.obj,
            name=OBJECT_NAME,
            children=[child1, ])
        self.verify_object(
            child1,
            name=CHILD1_NAME,
            parent=self.obj)
        self.verify_object(
            child2,
            name=CHILD2_NAME)
示例#3
0
    def test_insert_with_children(self):
        CHILD1_NAME = 'FirstChild'
        child1 = Base.PanObject(CHILD1_NAME)
        child1.parent = self.obj

        CHILD3_NAME = 'ThirdChild'
        child3 = Base.PanObject(CHILD3_NAME)
        child3.parent = self.obj

        self.obj.children = [child1, child3]

        CHILD2_NAME = 'SecondChild'
        child2 = Base.PanObject(CHILD2_NAME)

        ret_val = self.obj.insert(1, child2)

        self.assertEqual(child2, ret_val)
        self.verify_object(
            self.obj,
            name=OBJECT_NAME,
            children=[child1, child2, child3])
        self.verify_object(
            child1,
            name=CHILD1_NAME,
            parent=self.obj)
        self.verify_object(
            child2,
            name=CHILD2_NAME,
            parent=self.obj)
        self.verify_object(
            child3,
            name=CHILD3_NAME,
            parent=self.obj)
示例#4
0
    def test_add_with_children(self):
        CHILD1_NAME = 'FirstChild'
        child1 = Base.PanObject(CHILD1_NAME)
        child1.parent = self.obj

        self.obj.children = [child1, ]

        CHILD2_NAME = 'SecondChild'
        child2 = Base.PanObject(CHILD2_NAME)

        ret_val = self.obj.add(child2)

        self.assertEqual(child2, ret_val)
        self.verify_object(
            self.obj,
            name=OBJECT_NAME,
            children=[child1, child2])
        self.verify_object(
            child1,
            name=CHILD1_NAME,
            parent=self.obj)
        self.verify_object(
            child2,
            name=CHILD2_NAME,
            parent=self.obj)
示例#5
0
    def test_remove_raises_error(self):
        '''An invalid child should raise ValueError.'''
        CHILD1_NAME = 'Child1'
        child1 = Base.PanObject(CHILD1_NAME)
        child1.parent = self.obj

        CHILD2_NAME = 'Child2'
        child2 = Base.PanObject(CHILD2_NAME)

        self.obj.children = [
            child1,
        ]

        self.assertRaises(ValueError, self.obj.remove, child2)
示例#6
0
    def test_extend_without_children(self):
        CHILD1_NAME = 'FirstChild'
        child1 = Base.PanObject(CHILD1_NAME)

        CHILD2_NAME = 'SecondChild'
        child2 = Base.PanObject(CHILD2_NAME)

        children = [child1, child2]

        ret_val = self.obj.extend(children)

        self.assertIsNone(ret_val)
        self.verify_object(self.obj, name=OBJECT_NAME, children=children)
        self.verify_object(child1, name=CHILD1_NAME, parent=self.obj)
        self.verify_object(child2, name=CHILD2_NAME, parent=self.obj)
示例#7
0
    def test_add_without_children(self):
        CHILD_NAME = 'child'
        child = Base.PanObject(CHILD_NAME)

        ret_value = self.obj.add(child)

        self.assertEqual(child, ret_value)
        self.verify_object(self.obj, name=OBJECT_NAME, children=[
            child,
        ])
        self.verify_object(child, name=CHILD_NAME, parent=self.obj)
示例#8
0
    def test_pop(self):
        CHILD_NAME = 'Child'
        child = Base.PanObject(CHILD_NAME)
        child.parent = self.obj

        self.obj.children = [
            child,
        ]

        ret_val = self.obj.pop(0)

        self.assertEqual(child, ret_val)
        self.verify_object(self.obj, name=OBJECT_NAME)
        self.verify_object(child, name=CHILD_NAME)
示例#9
0
    def test_str_of_object_without_name(self):
        self.obj = Base.PanObject()

        self.assertEqual('None', str(self.obj))
示例#10
0
    def test_create_without_name(self):
        self.obj = Base.PanObject()

        self.verify_object(self.obj)
示例#11
0
    def test_create_with_name(self):
        self.obj = Base.PanObject(OBJECT_NAME)

        self.verify_object(self.obj, name=OBJECT_NAME)
示例#12
0
 def setUp(self):
     self.obj = Base.PanObject(OBJECT_NAME)