@@ -83,6 +83,14 @@ check_exact_renames () {
8383 rename_detected 3
8484}
8585
86+ check_no_renames () {
87+ check_common &&
88+ rename_undetected 0 &&
89+ rename_undetected 1 &&
90+ rename_undetected 2 &&
91+ rename_undetected 3
92+ }
93+
8694test_expect_success ' setup repo' '
8795 cat <<-\EOF >3-old &&
8896 33a
@@ -195,6 +203,12 @@ test_expect_success 'rename threshold is truncated' '
195203 check_exact_renames
196204'
197205
206+ test_expect_success ' disabled rename detection' '
207+ git read-tree --reset -u HEAD &&
208+ git merge-recursive --no-renames $tail &&
209+ check_no_renames
210+ '
211+
198212test_expect_success ' last wins in --find-renames=<m> --find-renames=<n>' '
199213 git read-tree --reset -u HEAD &&
200214 test_must_fail git merge-recursive \
@@ -209,6 +223,18 @@ test_expect_success '--find-renames resets threshold' '
209223 $check_50
210224'
211225
226+ test_expect_success ' last wins in --no-renames --find-renames' '
227+ git read-tree --reset -u HEAD &&
228+ test_must_fail git merge-recursive --no-renames --find-renames $tail &&
229+ $check_50
230+ '
231+
232+ test_expect_success ' last wins in --find-renames --no-renames' '
233+ git read-tree --reset -u HEAD &&
234+ git merge-recursive --find-renames --no-renames $tail &&
235+ check_no_renames
236+ '
237+
212238test_expect_success ' assumption for further tests: trivial merge succeeds' '
213239 git read-tree --reset -u HEAD &&
214240 git merge-recursive HEAD -- HEAD HEAD &&
@@ -218,6 +244,8 @@ test_expect_success 'assumption for further tests: trivial merge succeeds' '
218244 git merge-recursive --find-renames=$th2 HEAD -- HEAD HEAD &&
219245 git diff --quiet --cached &&
220246 git merge-recursive --find-renames=100% HEAD -- HEAD HEAD &&
247+ git diff --quiet --cached &&
248+ git merge-recursive --no-renames HEAD -- HEAD HEAD &&
221249 git diff --quiet --cached
222250'
223251
0 commit comments