def test_does_not_include_completely_empty_override_blocks(self): blocks = AssParser.parse_tags(r'{}text') self.assertTrue(len(blocks),1) self.assertIsInstance(blocks[0], AssParser.AssBlockPlain)
def test_treats_not_closed_override_block_as_plain_text(self): with disabled_logging(logging.WARNING): blocks = AssParser.parse_tags(r'{\b1\b0blablabla') self.assertIsInstance(blocks[0], AssParser.AssBlockPlain)
def test_does_not_include_comments(self): blocks = AssParser.parse_tags(r'{comment line}text') self.assertTrue(len(blocks),1) self.assertIsInstance(blocks[0], AssParser.AssBlockPlain)
def test_does_not_include_drawing(self): blocks = AssParser.parse_tags(r'{\b1\p1}blablabla{\p0}blablabla') self.assertEqual(len(blocks),3)
def test_includes_tags_in_correct_order(self): blocks = AssParser.parse_tags(r'{\b1}blablabla{\b0}blablabla') self.assertIsInstance(blocks[0], AssParser.AssBlockOverride) self.assertIsInstance(blocks[1], AssParser.AssBlockPlain) self.assertIsInstance(blocks[2], AssParser.AssBlockOverride) self.assertIsInstance(blocks[3], AssParser.AssBlockPlain)
def test_returns_empty_list_on_empty_string(self): blocks = AssParser.parse_tags('') self.assertFalse(blocks)
def test_returns_correct_number_of_blocks_but_does_not_include_useless_ones(self): blocks = AssParser.parse_tags(r"{\an5\blur1.1\fsp3\1a&H32\pos(962.2,918.8)}Animation number 392") self.assertEqual(len(blocks), 1)
def test_does_not_include_comments(self): blocks = AssParser.parse_tags(r"{comment line}text") self.assertTrue(len(blocks), 1) self.assertIsInstance(blocks[0], AssParser.AssBlockPlain)
def test_does_not_include_completely_empty_override_blocks(self): blocks = AssParser.parse_tags(r"{}text") self.assertTrue(len(blocks), 1) self.assertIsInstance(blocks[0], AssParser.AssBlockPlain)
def test_treats_not_closed_override_block_as_plain_text(self): with disabled_logging(logging.WARNING): blocks = AssParser.parse_tags(r"{\b1\b0blablabla") self.assertIsInstance(blocks[0], AssParser.AssBlockPlain)
def test_includes_tags_in_correct_order(self): blocks = AssParser.parse_tags(r"{\b1}blablabla{\b0}blablabla") self.assertIsInstance(blocks[0], AssParser.AssBlockOverride) self.assertIsInstance(blocks[1], AssParser.AssBlockPlain) self.assertIsInstance(blocks[2], AssParser.AssBlockOverride) self.assertIsInstance(blocks[3], AssParser.AssBlockPlain)
def test_does_not_include_drawing(self): blocks = AssParser.parse_tags(r"{\b1\p1}blablabla{\p0}blablabla") self.assertEqual(len(blocks), 3)
def test_returns_empty_list_on_empty_string(self): blocks = AssParser.parse_tags("") self.assertFalse(blocks)