X-Git-Url: http://git.scottworley.com/paperdoorknob/blobdiff_plain/62043b2bafbcb57beae7559235bd6984b6275b55..70adfbff16123a62d6b25f8ead23789d831d1d70:/glowfic_test.py diff --git a/glowfic_test.py b/glowfic_test.py index 2d01c2a..64da164 100644 --- a/glowfic_test.py +++ b/glowfic_test.py @@ -10,41 +10,41 @@ import unittest from bs4 import BeautifulSoup from images import FakeImageStore -from glowfic import chunkDOMs, makeChunk +from glowfic import makeChunk, Thread from texify import PandocTexifier class TestSplit(unittest.TestCase): def testSplit1(self) -> None: - soup = BeautifulSoup(b''' + t = Thread(BeautifulSoup(b'''
The "post" -
''', 'html.parser') - self.assertEqual([list(t.stripped_strings) for t in chunkDOMs(soup)], + ''', 'html.parser')) + self.assertEqual([list(t.stripped_strings) for t in t.chunkDOMs()], [['The "post"']]) def testSplit2(self) -> None: - soup = BeautifulSoup(b''' + t = Thread(BeautifulSoup(b'''
The "post"
The "reply"
- ''', 'html.parser') - self.assertEqual([list(t.stripped_strings) for t in chunkDOMs(soup)], + ''', 'html.parser')) + self.assertEqual([list(t.stripped_strings) for t in t.chunkDOMs()], [['The "post"'], ['The "reply"']]) def testSplit3(self) -> None: - soup = BeautifulSoup(b''' + t = Thread(BeautifulSoup(b'''
The "post"
1st reply
2nd reply
- ''', 'html.parser') - self.assertEqual([list(t.stripped_strings) for t in chunkDOMs(soup)], + ''', 'html.parser')) + self.assertEqual([list(t.stripped_strings) for t in t.chunkDOMs()], [['The "post"'], ['1st reply'], ['2nd reply']]) @@ -52,8 +52,8 @@ class TestMakeChunk(unittest.TestCase): def testEmptyContent(self) -> None: with open('testdata/empty-content.html', 'rb') as f: - soup = BeautifulSoup(f, 'html.parser') - c = makeChunk(next(iter(chunkDOMs(soup))), FakeImageStore()) + t = Thread(BeautifulSoup(f, 'html.parser')) + c = makeChunk(next(iter(t.chunkDOMs())), FakeImageStore()) self.assertEqual( c.icon, 'stored:https://d1anwqy6ci9o1i.cloudfront.net/' + @@ -72,5 +72,20 @@ class TestMakeChunk(unittest.TestCase): PandocTexifier("pandoc").texify(c.character), b'{Keltham}\n') +class TestThread(unittest.TestCase): + + def testTitle(self) -> None: + t = Thread(BeautifulSoup(b''' + +
+ + Teh Story! + +
+
The "post"
+ ''', 'html.parser')) + self.assertEqual(t.title(), 'Teh Story!') + + if __name__ == '__main__': unittest.main()