t3034: test option to disable renames
Signed-off-by: Felipe Gonçalves Assis <felipegassis@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Felipe Gonçalves Assis committed
Feb 23, 2016 at 22:41 UTC
2307211349e6fe83e3574c2e1a03bb34c24ed1b9
1 file changed
+28
t/t3034-merge-recursive-rename-options.sh
+28
@@ -83,6 +83,14 @@ check_exact_renames () {
83
rename_detected 3
84
}
85
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
+
94
test_expect_success 'setup repo' '
95
cat <<-\EOF >3-old &&
96
33a
@@ -195,6 +203,12 @@ test_expect_success 'rename threshold is truncated' '
203
check_exact_renames
204
'
205
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
+
212
test_expect_success 'last wins in --find-renames=<m> --find-renames=<n>' '
213
git read-tree --reset -u HEAD &&
214
test_must_fail git merge-recursive \
@@ -209,6 +223,18 @@ test_expect_success '--find-renames resets threshold' '
223
$check_50
224
'
225
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
+
238
test_expect_success 'assumption for further tests: trivial merge succeeds' '
239
git read-tree --reset -u HEAD &&
240
git merge-recursive HEAD -- HEAD HEAD &&
@@ -218,6 +244,8 @@ test_expect_success 'assumption for further tests: trivial merge succeeds' '
244
git merge-recursive --find-renames=$th2 HEAD -- HEAD HEAD &&
245
git diff --quiet --cached &&
246
git merge-recursive --find-renames=100% HEAD -- HEAD HEAD &&
247
+ git diff --quiet --cached &&
248
+ git merge-recursive --no-renames HEAD -- HEAD HEAD &&
249
git diff --quiet --cached
250
'
251