예제 #1
0
    def test_link__preservesRepresentedParent(self):
        ''' after linking all these tree's the represented_parent nodes should represent the paths in the represented tree
        '''
        #Arrange
        tree = LinkCutTree()
        a1 = tree.makeTree('a1')
        a2 = tree.makeTree('a2')
        a3 = tree.makeTree('a3')
        a4 = tree.makeTree('a4')
        a5 = tree.makeTree('a5')
        a6 = tree.makeTree('a6')
        tree.link(a1,a2)
        tree.link(a2,a3)
        tree.link(a3,a4)
        tree.link(a4,a5)
        tree.link(a5,a6)
        tree.access(a3)

        c1 = tree.makeTree('c1')
        c2 = tree.makeTree('c2')
        c3 = tree.makeTree('c3')
        tree.link(c1,c2)
        tree.link(c2,c3)

        tree.link(a4,c1);
        
        # act/assert
        self.assertEqual(a1,a2.represented_parent)
        self.assertEqual(a2,a3.represented_parent)
        self.assertEqual(a3,a4.represented_parent)
        self.assertEqual(a4,a5.represented_parent)
        self.assertEqual(a5,a6.represented_parent)
        
        self.assertEqual(c1,c2.represented_parent)
        self.assertEqual(c2,c3.represented_parent)

        self.assertEqual(a4,c1.represented_parent)
예제 #2
0
    def test_link__preservesRepresentedParent(self):
        ''' after linking all these tree's the represented_parent nodes should represent the paths in the represented tree
        '''
        #Arrange
        tree = LinkCutTree()
        a1 = tree.makeTree('a1')
        a2 = tree.makeTree('a2')
        a3 = tree.makeTree('a3')
        a4 = tree.makeTree('a4')
        a5 = tree.makeTree('a5')
        a6 = tree.makeTree('a6')
        tree.link(a1, a2)
        tree.link(a2, a3)
        tree.link(a3, a4)
        tree.link(a4, a5)
        tree.link(a5, a6)
        tree.access(a3)

        c1 = tree.makeTree('c1')
        c2 = tree.makeTree('c2')
        c3 = tree.makeTree('c3')
        tree.link(c1, c2)
        tree.link(c2, c3)

        tree.link(a4, c1)

        # act/assert
        self.assertEqual(a1, a2.represented_parent)
        self.assertEqual(a2, a3.represented_parent)
        self.assertEqual(a3, a4.represented_parent)
        self.assertEqual(a4, a5.represented_parent)
        self.assertEqual(a5, a6.represented_parent)

        self.assertEqual(c1, c2.represented_parent)
        self.assertEqual(c2, c3.represented_parent)

        self.assertEqual(a4, c1.represented_parent)