Skip to content

Commit f384525

Browse files
newrengitster
authored andcommitted
t4001: add a test comparing basename similarity and content similarity
Add a simple test where a removed file is similar to two different added files; one of them has the same basename, and the other has a slightly higher content similarity. In the current test, content similarity is weighted higher than filename similarity. Subsequent commits will add a new rule that weighs a mixture of filename similarity and content similarity in a manner that will change the outcome of this testcase. Signed-off-by: Elijah Newren <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 829514c commit f384525

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

t/t4001-diff-rename.sh

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,4 +262,27 @@ test_expect_success 'diff-tree -l0 defaults to a big rename limit, not zero' '
262262
grep "myotherfile.*myfile" actual
263263
'
264264

265+
test_expect_success 'basename similarity vs best similarity' '
266+
mkdir subdir &&
267+
test_write_lines line1 line2 line3 line4 line5 \
268+
line6 line7 line8 line9 line10 >subdir/file.txt &&
269+
git add subdir/file.txt &&
270+
git commit -m "base txt" &&
271+
272+
git rm subdir/file.txt &&
273+
test_write_lines line1 line2 line3 line4 line5 \
274+
line6 line7 line8 >file.txt &&
275+
test_write_lines line1 line2 line3 line4 line5 \
276+
line6 line7 line8 line9 >file.md &&
277+
git add file.txt file.md &&
278+
git commit -a -m "rename" &&
279+
git diff-tree -r -M --name-status HEAD^ HEAD >actual &&
280+
# subdir/file.txt is 88% similar to file.md and 78% similar to file.txt
281+
cat >expected <<-\EOF &&
282+
R088 subdir/file.txt file.md
283+
A file.txt
284+
EOF
285+
test_cmp expected actual
286+
'
287+
265288
test_done

0 commit comments

Comments
 (0)