예제 #1
0
    def test_line(self):
        data = '[@New records of smut fungi. 4. Microbotryum coronariae comb. nov.#Title*]'
        line = Line(data)

        self.assertEqual(
            line.line,
            'New records of smut fungi. 4. Microbotryum coronariae comb. nov.')
        self.assertTrue(line.contains_start())
        self.assertEqual(line.end_label(), 'Title')
        self.assertFalse(line.is_short(50))
        self.assertFalse(line.is_blank())
예제 #2
0
 def append(self, line: Line) -> None:
     if line.contains_start():
         self.push_label()
     if line.end_label():
         if self.top_label() is None:
             raise ValueError('label close without open: %r' % line)
         try:
             self.top_label().set_label(line.end_label())
         except ValueError as e:
             raise ValueError('%s: %r' % (e, line))
     self._lines.append(line)