示例#1
0
    def test_itag(self):
        pxml = PXML()
        with pxml.itag("b"):
            pxml.insert("HelloWorld")
        self.assertEqual(["<b>", "HelloWorld", "</b>"], pxml.raw)
        self.assertEqual("<b>HelloWorld</b>", str(pxml))

        pxml = PXML()
        with pxml.itag("b"):
            with pxml.itag("i"):
                pxml.insert("HelloWorld")
        self.assertEqual(["<b>", "<i>", "HelloWorld", "</i>", "</b>"], pxml.raw)
        self.assertEqual("<b><i>HelloWorld</i></b>", str(pxml))

        pxml = PXML()
        with pxml.itag("b"):
            with pxml.itag("i"):
                with pxml.itag("u"):
                    pxml.insert("HelloWorld")
        self.assertEqual(["<b>", "<i>", "<u>","HelloWorld", "</u>", "</i>", "</b>"], pxml.raw)
        self.assertEqual("<b><i><u>HelloWorld</u></i></b>", str(pxml))

        pxml = PXML()
        with pxml.itag("b"):
            pxml.insert("Hello")
        with pxml.itag("b"):
            pxml.insert("World")
        self.assertEqual(["<b>", "Hello", "</b>", "<b>", "World", "</b>"], pxml.raw)
        self.assertEqual("<b>Hello</b><b>World</b>", str(pxml))

        pxml = PXML()
        with pxml.itag("span", [("id", "Hello")]):
            pxml.insert("Hello")
        self.assertEqual(['<span id="Hello">', "Hello", "</span>"], pxml.raw)
        self.assertEqual('<span id="Hello">Hello</span>', str(pxml))

        pxml = PXML()
        with pxml.itag("span", [("id", "Hello")]):
            with pxml.itag("span", [("id", "World")]):
                pxml.insert("HelloWorld")
        self.assertEqual(['<span id="Hello">', '<span id="World">', "HelloWorld", "</span>", "</span>"], pxml.raw)
        self.assertEqual('<span id="Hello"><span id="World">HelloWorld</span></span>', str(pxml))