summaryrefslogtreecommitdiff
path: root/git/test/test_repo.py
diff options
context:
space:
mode:
authorGeorge Hickman <george@ghickman.co.uk>2017-03-07 16:40:13 +0000
committerSebastian Thiel <byronimo@gmail.com>2017-03-07 21:23:38 +0100
commit6c6ae79a7b38c7800c19e28a846cb2f227e52432 (patch)
tree77479f1954026e344fadddccc6a132e1e1a9ff26 /git/test/test_repo.py
parent46c4ec22d70251c487a1d43c69c455fc2baab4f0 (diff)
downloadgitpython-6c6ae79a7b38c7800c19e28a846cb2f227e52432.tar.gz
Add a fixture to test incremental blame output for git 2.11.1+
Diffstat (limited to 'git/test/test_repo.py')
-rw-r--r--git/test/test_repo.py38
1 files changed, 20 insertions, 18 deletions
diff --git a/git/test/test_repo.py b/git/test/test_repo.py
index 4f9be4fc..91c780dd 100644
--- a/git/test/test_repo.py
+++ b/git/test/test_repo.py
@@ -387,24 +387,26 @@ class TestRepo(TestBase):
@patch.object(Git, '_call_process')
def test_blame_incremental(self, git):
- git.return_value = fixture('blame_incremental')
- blame_output = self.rorepo.blame_incremental('9debf6b0aafb6f7781ea9d1383c86939a1aacde3', 'AUTHORS')
- blame_output = list(blame_output)
- self.assertEqual(len(blame_output), 5)
-
- # Check all outputted line numbers
- ranges = flatten([entry.linenos for entry in blame_output])
- self.assertEqual(ranges, flatten([range(2, 3), range(14, 15), range(1, 2), range(3, 14), range(15, 17)]))
-
- commits = [entry.commit.hexsha[:7] for entry in blame_output]
- self.assertEqual(commits, ['82b8902', '82b8902', 'c76852d', 'c76852d', 'c76852d'])
-
- # Original filenames
- self.assertSequenceEqual([entry.orig_path for entry in blame_output], [u'AUTHORS'] * len(blame_output))
-
- # Original line numbers
- orig_ranges = flatten([entry.orig_linenos for entry in blame_output])
- self.assertEqual(orig_ranges, flatten([range(2, 3), range(14, 15), range(1, 2), range(2, 13), range(13, 15)])) # noqa E501
+ # loop over two fixtures, create a test fixture for 2.11.1+ syntax
+ for git_fixture in ('blame_incremental', 'blame_incremental_2.11.1_plus'):
+ git.return_value = fixture(git_fixture)
+ blame_output = self.rorepo.blame_incremental('9debf6b0aafb6f7781ea9d1383c86939a1aacde3', 'AUTHORS')
+ blame_output = list(blame_output)
+ self.assertEqual(len(blame_output), 5)
+
+ # Check all outputted line numbers
+ ranges = flatten([entry.linenos for entry in blame_output])
+ self.assertEqual(ranges, flatten([range(2, 3), range(14, 15), range(1, 2), range(3, 14), range(15, 17)]))
+
+ commits = [entry.commit.hexsha[:7] for entry in blame_output]
+ self.assertEqual(commits, ['82b8902', '82b8902', 'c76852d', 'c76852d', 'c76852d'])
+
+ # Original filenames
+ self.assertSequenceEqual([entry.orig_path for entry in blame_output], [u'AUTHORS'] * len(blame_output))
+
+ # Original line numbers
+ orig_ranges = flatten([entry.orig_linenos for entry in blame_output])
+ self.assertEqual(orig_ranges, flatten([range(2, 3), range(14, 15), range(1, 2), range(2, 13), range(13, 15)])) # noqa E501
@patch.object(Git, '_call_process')
def test_blame_complex_revision(self, git):