def test_novel_serialized(self):
     scode0 = SCode(None, SCmd.BE, (), '')
     scode1 = SCode(None, SCmd.INFO_DATA, (), '')
     data = [
         # (src, expect)
         (True, Chapter('a', Episode('b', Scene('c', scode0))), 1),
         (True, Chapter('a', scode1, Episode('b', Scene('c', scode0))), 2),
     ]
     validate_with_fail(
         self, 'novel_serialized', lambda src, expect: self.assertEqual(
             len(sl.Serializer()._novel_serialized(src)), expect), data)
示例#2
0
 def test_is_empty_script(self):
     data = [
             # (src, expect[bool])
             (True, SCode(None, SCmd.BE, ('&',), ""), True),
             ]
     validate_with_fail(self, 'is_empty_script',
             lambda src, expect: self.assertEqual(
                 ck.Checker().is_empty_script(src), expect),
             data)
示例#3
0
 def test_has_then(self):
     data = [
             # (src, expect[bool])
             (True, SCode(None, SCmd.THEN, (),""), True),
             ]
     validate_with_fail(self, 'has_then',
             lambda src, expect: self.assertEqual(
                 ck.Checker().has_then(src), expect),
             data)
 def test_conv_to_novel(self):
     data = [
         # (src, is_cmt, expect)
         (True, CodeList(*[SCode(None, SCmd.BE, ('太郎', ), '')]), False,
          (FormatTag.DESCRIPTION_HEAD, ' 太郎。', '\n')),
     ]
     validate_with_fail(
         self, 'conv_to_novel',
         lambda src, is_cmt, expect: self.assertEqual(
             cp.Compiler()._conv_to_novel(src, is_cmt).data, expect), data)
示例#5
0
    def _inserted_after_storyinfo(self, src: Story, infos: list) -> Story:
        assertion.is_instance(src, Story)
        LOG.debug(f'- info in inserted_after_storyinfo:{infos}')

        tmp = []
        for child in src.children:
            if isinstance(child, SCode) and child.cmd is SCmd.INFO_STORY:
                tmp.append(child)
                for info in infos:
                    tmp.append(SCode(None, SCmd.INFO_DATA, (info,), ""))
            else:
                tmp.append(child)
        return src.inherited(*tmp)
    def test_conv_from_tag(self):
        data = [
            # (src, head, nums, is_cmt, is_plot, is_data, in_mate, expect, exp_nums)
            (True, SCode(None, SCmd.TAG_BR, (), ''), '#', (1, 1, 1), True,
             False, False, False, '\n\n', (1, 1, 1)),
        ]

        def checker(src, head, nums, is_cmt, is_plot, is_data, in_mate, expect,
                    exp_nums):
            tmp = cp.Compiler()._conv_from_tag(src, head, nums, is_cmt,
                                               is_plot, is_data, in_mate)
            self.assertEqual(tmp[0], expect)
            self.assertEqual(tmp[1], exp_nums)

        validate_with_fail(self, 'conv_from_tag', checker, data)