Ejemplo n.º 1
0
    def test_root(self):
        a = Div()
        b = Div().append_to(a)
        c = Div().append_to(b)
        self.assertEqual(c.root, a)
        self.assertEqual(b.root, a)
        self.assertEqual(a.root, a)

        c = b.pop()
        self.assertEqual(c.root, c)
        self.assertEqual(b.root, a)
        self.assertEqual(a.root, a)

        b(c)
        d = Div()
        a.move_childs(d)
        self.assertEqual(c.root, d)
        self.assertEqual(b.root, d)
        self.assertEqual(a.root, a)

        c(a)
        self.assertEqual(c.root, d)
        self.assertEqual(b.root, d)
        self.assertEqual(a.root, d)

        c.empty()
        self.assertEqual(a.root, a)
Ejemplo n.º 2
0
    def test_pop(self):
        new = Div().append_to(self.page)
        self.page.pop(0)
        self.assertTrue(new not in self.page)
        new2 = Div().append_to(self.page)
        self.page.pop()
        self.assertTrue(new2 not in self.page)
        new3 = Div()
        self.page(child_foo=new3)
        self.page.pop('child_foo')
        self.assertTrue(new3 not in self.page)
        new4, new5 = Div(), Div()
        self.page(child_foo_1=new4)
        self.page(child_foo_2=new4)
        self.page.pop(['child_foo_1', 'child_foo_2'])
        self.assertTrue(new4 not in self.page and new5 not in self.page)

        with self.assertRaises(DOMModByKeyError):
            test = Div()(test_key=A())
            test.pop('nonexistentkey')

        with self.assertRaises(DOMModByIndexError):
            test = Div()(A(), P())
            test.pop(2)