Merge branch 'pw/git-p4-tests'
[gitweb.git] / t / t1506-rev-parse-diagnosis.sh
index 4a6396f9e3fb8006969916e12066fa6fc1527b3d..c5cb77a0e1f34ac46dd8727341948389624e8f38 100755 (executable)
@@ -8,8 +8,11 @@ exec </dev/null
 
 test_did_you_mean ()
 {
-       printf "fatal: Path '$2$3' $4, but not ${5:-'$3'}.\n" >expected &&
-       printf "Did you mean '$1:$2$3'${2:+ aka '$1:./$3'}?\n" >>expected &&
+       sq="'" &&
+       cat >expected <<-EOF &&
+       fatal: Path '$2$3' $4, but not ${5:-$sq$3$sq}.
+       Did you mean '$1:$2$3'${2:+ aka $sq$1:./$3$sq}?
+       EOF
        test_cmp expected error
 }
 
@@ -168,4 +171,15 @@ test_expect_success 'relative path when startup_info is NULL' '
        grep "BUG: startup_info struct is not initialized." error
 '
 
+test_expect_success '<commit>:file correctly diagnosed after a pathname' '
+       test_must_fail git rev-parse file.txt HEAD:file.txt 1>actual 2>error &&
+       test_i18ngrep ! "exists on disk" error &&
+       test_i18ngrep "no such path in the working tree" error &&
+       cat >expect <<-\EOF &&
+       file.txt
+       HEAD:file.txt
+       EOF
+       test_cmp expect actual
+'
+
 test_done