From c0e69a4263a7f42b7a7d8bb44d11ee3d14a27545 Mon Sep 17 00:00:00 2001 From: Cesar Velazquez Date: Wed, 1 Feb 2023 23:02:56 -0800 Subject: Updated diff test to use different similarity thresholds --- test/test_diff.py | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) (limited to 'test/test_diff.py') diff --git a/test/test_diff.py b/test/test_diff.py index 16d90209..50433774 100644 --- a/test/test_diff.py +++ b/test/test_diff.py @@ -420,17 +420,17 @@ class TestDiff(TestBase): repo = Repo.init(rw_dir) file_a = osp.join(rw_dir, "file_a.txt") with open(file_a, "w", encoding='utf-8') as outfile: - outfile.write("hello world") + outfile.write("hello world\n") repo.git.add(Git.polish_url(file_a)) repo.git.commit(message="Added file_a.txt") # remove file_a.txt repo.git.rm(Git.polish_url(file_a)) - # create and commit file_b.txt + # create and commit file_b.txt with similarity index of 52 file_b = osp.join(rw_dir, "file_b.txt") with open(file_b, "w", encoding='utf-8') as outfile: - outfile.write("hello world") + outfile.write("hello world\nhello world") repo.git.add(Git.polish_url(file_b)) repo.git.commit(message="Removed file_a.txt. Added file_b.txt") @@ -458,3 +458,26 @@ class TestDiff(TestBase): diff = diffs[1] self.assertEqual(True, diff.new_file) self.assertEqual('file_b.txt', diff.a_path) + + # check diff with high similarity index + diffs = commit_b.diff(commit_a, split_single_char_options=False, M='75%') + self.assertEqual(2, len(diffs)) + + # check fileA.txt deleted + diff = diffs[0] + self.assertEqual(True, diff.deleted_file) + self.assertEqual('file_a.txt', diff.a_path) + + # check fileB.txt added + diff = diffs[1] + self.assertEqual(True, diff.new_file) + self.assertEqual('file_b.txt', diff.a_path) + + # check diff with low similarity index + diffs = commit_b.diff(commit_a, split_single_char_options=False, M='40%') + self.assertEqual(1, len(diffs)) + diff = diffs[0] + self.assertEqual(True, diff.renamed_file) + self.assertEqual('file_a.txt', diff.rename_from) + self.assertEqual('file_b.txt', diff.rename_to) + -- cgit v1.2.1