from helpers import SoupTest from beautifulsoup import BeautifulSoup from beautifulsoup.element import SoupStrainer from beautifulsoup.builder.lxml_builder import LXMLTreeBuilder import unittest class TestLXMLBuilder(SoupTest): def runTest(self): self.test_bare_string() self.test_tag_nesting() self.test_self_closing() self.test_soupstrainer() def test_bare_string(self): self.assertSoupEquals( "A bare string", "

A bare string

") def test_tag_nesting(self): b_tag = "Inside a B tag" self.assertSoupEquals(b_tag) nested_b_tag = "

A nested tag

" self.assertSoupEquals(nested_b_tag) def test_self_closing(self): self.assertSoupEquals( "

A tag

", "

A tag

") def test_soupstrainer(self): strainer = SoupStrainer("b") soup = BeautifulSoup("A bold statement", self.default_builder, parseOnlyThese=strainer) self.assertEquals(soup.decode(), "bold") soup = BeautifulSoup("A bold statement", self.default_builder, parseOnlyThese=strainer) self.assertEquals(soup.decode(), "bold") def test_suite(): return unittest.TestLoader().loadTestsFromName('__name__')