コード例 #1
0
ファイル: node_test.py プロジェクト: wangdyna/wxPython
    def testAddRemoveChildren(self):
        # test the add/remove functions
        children = [Node() for i in range(0, 5)]
        parentNode = Node()

        parentNode.addChildren(children, where='front')
        self.assert_(parentNode.children == children)

        child = Node()
        parentNode.addChild(child, where='back')
        self.assert_(parentNode.children == children + [child])
        self.assert_(child.parent == parentNode)

        parentNode.removeChild(child)
        self.assert_(parentNode.children == children)
        self.assert_(child.parent == None)

        parentNode.removeAllChildren()
        self.assert_(parentNode.children == [])

        # test some bogus operations
        self.assertRaises(ValueError, parentNode.removeChild, child)
        self.assertRaises(ValueError, parentNode.removeChildren, children)
        #self.assertRaises( IndexError, parentNode.addChild, child, where = 666 )
        self.assertRaises(IndexError,
                          parentNode.addChild,
                          child,
                          where='qwertz')
        #self.assertRaises( IndexError, parentNode.addChildren, children, where = 666 )
        self.assertRaises(IndexError,
                          parentNode.addChildren,
                          children,
                          where='qwertz')

        # test re-parenting of child
        parent1 = Node()
        parent2 = Node()
        child2 = Node()

        parent1.addChild(child2)
        self.assert_(parent1.children == [child2])
        self.assert_(child2.parent == parent1)

        parent2.addChild(child2)
        self.assert_(parent2.children == [child2])
        self.assert_(parent1.children == [])
        self.assert_(child2.parent == parent2)

        child2.parent = None
        self.assert_(parent2.children == [])
        self.assert_(child2.parent == None)

        child2.parent = parent1
        self.assert_(parent1.children == [child2])
        self.assert_(child2.parent == parent1)

        child2.parent = child2.parent
        self.assert_(parent1.children == [child2])
        self.assert_(child2.parent == parent1)
コード例 #2
0
    def testNodeWithChildren(self):
        children = [Node(name='child %d' % i) for i in range(0, 5)]
        parentNode = Node(name='parent')

        parentNode.addChildren(children)

        root = self.doSaveLoad(parentNode)
        self.assert_(root.children[4].parent is root)
        self.assert_(root.children[4].root is root)
コード例 #3
0
 def testNodeWithChildren(self):
     children = [ Node( name = 'child %d' % i ) for i in range(0,5) ]
     parentNode = Node( name = 'parent' )
     
     parentNode.addChildren( children )
     
     root = self.doSaveLoad( parentNode )        
     self.assert_( root.children[4].parent is root )
     self.assert_( root.children[4].root is root )
コード例 #4
0
ファイル: node_test.py プロジェクト: acarl123/wxPython
    def testAddRemoveChildren(self):
        # test the add/remove functions
        children = [ Node() for i in range(0,5) ]
        parentNode = Node()
        
        parentNode.addChildren( children, where = 'front' )
        self.assert_( parentNode.children == children )
        
        child = Node()
        parentNode.addChild( child, where = 'back' )
        self.assert_( parentNode.children == children + [ child ] )
        self.assert_( child.parent == parentNode )
        
        parentNode.removeChild( child )
        self.assert_( parentNode.children == children )
        self.assert_( child.parent == None )
        
        parentNode.removeAllChildren()
        self.assert_( parentNode.children == [] )
        
        # test some bogus operations    
        self.assertRaises( ValueError, parentNode.removeChild, child )
        self.assertRaises( ValueError, parentNode.removeChildren, children )
        #self.assertRaises( IndexError, parentNode.addChild, child, where = 666 )
        self.assertRaises( IndexError, parentNode.addChild, child, where = 'qwertz' )
        #self.assertRaises( IndexError, parentNode.addChildren, children, where = 666 )
        self.assertRaises( IndexError, parentNode.addChildren, children, where = 'qwertz' )

        # test re-parenting of child        
        parent1 = Node()
        parent2 = Node()
        child2 = Node()
        
        parent1.addChild( child2 )
        self.assert_( parent1.children == [ child2 ] )
        self.assert_( child2.parent == parent1 )

        parent2.addChild( child2 )
        self.assert_( parent2.children == [ child2 ] )
        self.assert_( parent1.children == [] )
        self.assert_( child2.parent == parent2 )

        child2.parent = None
        self.assert_( parent2.children == [] )
        self.assert_( child2.parent == None )

        child2.parent = parent1
        self.assert_( parent1.children == [ child2 ] )
        self.assert_( child2.parent == parent1 )
        
        child2.parent = child2.parent
        self.assert_( parent1.children == [ child2 ] )
        self.assert_( child2.parent == parent1 )