當前位置: 首頁>>代碼示例>>Python>>正文


Python DiffParser.generate_patch方法代碼示例

本文整理匯總了Python中cola.diffparse.DiffParser.generate_patch方法的典型用法代碼示例。如果您正苦於以下問題:Python DiffParser.generate_patch方法的具體用法?Python DiffParser.generate_patch怎麽用?Python DiffParser.generate_patch使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在cola.diffparse.DiffParser的用法示例。


在下文中一共展示了DiffParser.generate_patch方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: test_diff_at_start

# 需要導入模塊: from cola.diffparse import DiffParser [as 別名]
# 或者: from cola.diffparse.DiffParser import generate_patch [as 別名]
    def test_diff_at_start(self):
        fixture_path = helper.fixture('diff-start.txt')
        parser = DiffParser('foo bar/a', core.read(fixture_path))
        hunks = parser.hunks

        self.assertEqual(hunks[0].lines[0], '@@ -1 +1,4 @@')
        self.assertEqual(hunks[-1].lines[-1], '+c')
        self.assertEqual(hunks[0].old_start, 1)
        self.assertEqual(hunks[0].old_count, 1)
        self.assertEqual(hunks[0].new_start, 1)
        self.assertEqual(hunks[0].new_count, 4)
        self.assertEqual(parser.generate_patch(1, 3),
                         '--- a/foo bar/a\n'
                         '+++ b/foo bar/a\n'
                         '@@ -1 +1,3 @@\n'
                         ' bar\n'
                         '+a\n'
                         '+b\n')
        self.assertEqual(parser.generate_patch(0, 4),
                         '--- a/foo bar/a\n'
                         '+++ b/foo bar/a\n'
                         '@@ -1 +1,4 @@\n'
                         ' bar\n'
                         '+a\n'
                         '+b\n'
                         '+c\n')
開發者ID:blackkensai,項目名稱:git-cola,代碼行數:28,代碼來源:diffparse_test.py

示例2: test_diff_that_empties_file

# 需要導入模塊: from cola.diffparse import DiffParser [as 別名]
# 或者: from cola.diffparse.DiffParser import generate_patch [as 別名]
    def test_diff_that_empties_file(self):
        fixture_path = helper.fixture('diff-empty.txt')
        parser = DiffParser('filename', core.read(fixture_path))
        hunks = parser.hunks

        self.assertEqual(hunks[0].lines[0],
                '@@ -1,2 +0,0 @@')
        self.assertEqual(hunks[-1].lines[-1],
                '-second')
        self.assertEqual(hunks[0].old_start, 1)
        self.assertEqual(hunks[0].old_count, 2)
        self.assertEqual(hunks[0].new_start, 0)
        self.assertEqual(hunks[0].new_count, 0)
        self.assertEqual(parser.generate_patch(1, 1),
                         '--- a/filename\n'
                         '+++ b/filename\n'
                         '@@ -1,2 +1 @@\n'
                         '-first\n'
                         ' second\n')
        self.assertEqual(parser.generate_patch(0, 2),
                         '--- a/filename\n'
                         '+++ b/filename\n'
                         '@@ -1,2 +0,0 @@\n'
                         '-first\n'
                         '-second\n')
開發者ID:007durgesh219,項目名稱:git-cola,代碼行數:27,代碼來源:diffparse_test.py

示例3: do

# 需要導入模塊: from cola.diffparse import DiffParser [as 別名]
# 或者: from cola.diffparse.DiffParser import generate_patch [as 別名]
    def do(self):
        parser = DiffParser(self.model.filename, self.model.diff_text)
        if self.has_selection:
            patch = parser.generate_patch(self.first_line_idx,
                                          self.last_line_idx,
                                          reverse=self.reverse)
        else:
            patch = parser.generate_hunk_patch(self.first_line_idx,
                                               reverse=self.reverse)
        if patch is None:
            return

        cfg = gitcfg.current()
        tmp_path = utils.tmp_filename('patch')
        try:
            core.write(tmp_path, patch,
                       encoding=cfg.file_encoding(self.model.filename))
            if self.apply_to_worktree:
                status, out, err = self.model.apply_diff_to_worktree(tmp_path)
            else:
                status, out, err = self.model.apply_diff(tmp_path)
        finally:
            os.unlink(tmp_path)
        Interaction.log_status(status, out, err)
        self.model.update_file_status(update_index=True)
開發者ID:Plenoge,項目名稱:git-cola,代碼行數:27,代碼來源:cmds.py


注:本文中的cola.diffparse.DiffParser.generate_patch方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。