upload-pack: fix off-by-one depth calculation in shallow clone
[gitweb.git] / t / t6042-merge-rename-corner-cases.sh
index 3be5059318cb96a3ef0fad7de03e273da79ba3e4..411550d2b6e9085c5e7f93c25effec7b130f0401 100755 (executable)
@@ -104,7 +104,7 @@ test_expect_failure 'conflict caused if rename not detected' '
        test 0 -eq $(git ls-files -u | wc -l) &&
        test 0 -eq $(git ls-files -o | wc -l) &&
 
-       test 6 -eq $(wc -l < c) &&
+       test_line_count = 6 c &&
        test $(git rev-parse HEAD:a) = $(git rev-parse B:a) &&
        test $(git rev-parse HEAD:b) = $(git rev-parse A:b)
 '
@@ -380,7 +380,7 @@ test_expect_success 'handle rename/rename (2to1) conflict correctly' '
        git checkout B^0 &&
 
        test_must_fail git merge -s recursive C^0 >out &&
-       grep "CONFLICT (rename/rename)" out &&
+       test_i18ngrep "CONFLICT (rename/rename)" out &&
 
        test 2 -eq $(git ls-files -s | wc -l) &&
        test 2 -eq $(git ls-files -u | wc -l) &&
@@ -551,19 +551,28 @@ test_expect_success 'setup rename/rename(1to2)/add-dest conflict' '
        git commit -m two
 '
 
-test_expect_failure 'rename/rename/add-dest merge still knows about conflicting file versions' '
+test_expect_success 'rename/rename/add-dest merge still knows about conflicting file versions' '
        git checkout C^0 &&
        test_must_fail git merge -s recursive B^0 &&
 
        test 5 -eq $(git ls-files -s | wc -l) &&
        test 2 -eq $(git ls-files -u b | wc -l) &&
        test 2 -eq $(git ls-files -u c | wc -l) &&
+       test 4 -eq $(git ls-files -o | wc -l) &&
 
        test $(git rev-parse :1:a) = $(git rev-parse A:a) &&
        test $(git rev-parse :2:b) = $(git rev-parse C:b) &&
        test $(git rev-parse :3:b) = $(git rev-parse B:b) &&
        test $(git rev-parse :2:c) = $(git rev-parse C:c) &&
-       test $(git rev-parse :3:c) = $(git rev-parse B:c)
+       test $(git rev-parse :3:c) = $(git rev-parse B:c) &&
+
+       test $(git hash-object c~HEAD) = $(git rev-parse C:c) &&
+       test $(git hash-object c~B\^0) = $(git rev-parse B:c) &&
+       test $(git hash-object b~HEAD) = $(git rev-parse C:b) &&
+       test $(git hash-object b~B\^0) = $(git rev-parse B:b) &&
+
+       test ! -f b &&
+       test ! -f c
 '
 
 test_done