def test_nonexistant_chapter(self): with self.assertRaisesRegex(ChapterError, r'(?i)\binvalid\s+chapter\s+number\b'): get_chapter_text(5, self.lines, self.linenumbers)
def test_chapter_on_last_line(self): with self.assertRaisesRegex(ChapterError, r'(?i)\bonly\s+whitespace\b'): get_chapter_text(4, self.lines, self.linenumbers)
def test_prologue(self): result = get_chapter_text(0, self.lines, self.linenumbers) self.assertEqual(result, 'fishies')
def test_empty_string_chapter(self): with self.assertRaisesRegex(ChapterError, r'(?i)\bonly\s+whitespace\b'): get_chapter_text(2, self.lines, self.linenumbers)
def test_normal_chapter(self): result = get_chapter_text(1, self.lines, self.linenumbers) self.assertEqual(result, 'Lorem ipsum.\nLine 2.\n\nOh hey!')