X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=t%2Ft2006-checkout-index-basic.sh;fp=t%2Ft2006-checkout-index-basic.sh;h=7b25a3572e2f0823fa74b126d87d0cf8777cb36a;hb=e4e68081bb811672b069eb1d6c97e57dd0764d51;hp=8e181dbf01c46a324b54471cc62e1c9291852079;hpb=59ec22464f6c2b170b05f287e00740ea2288fe5c;p=thirdparty%2Fgit.git diff --git a/t/t2006-checkout-index-basic.sh b/t/t2006-checkout-index-basic.sh index 8e181dbf01..7b25a3572e 100755 --- a/t/t2006-checkout-index-basic.sh +++ b/t/t2006-checkout-index-basic.sh @@ -31,5 +31,50 @@ test_expect_success 'checkout-index reports errors (stdin)' ' test_must_fail git checkout-index --stdin 2>stderr && test_i18ngrep not.in.the.cache stderr ' +for mode in 'case' 'utf-8' +do + case "$mode" in + case) dir='A' symlink='a' mode_prereq='CASE_INSENSITIVE_FS' ;; + utf-8) + dir=$(printf "\141\314\210") symlink=$(printf "\303\244") + mode_prereq='UTF8_NFD_TO_NFC' ;; + esac + + test_expect_success SYMLINKS,$mode_prereq \ + "checkout-index with $mode-collision don't write to the wrong place" ' + git init $mode-collision && + ( + cd $mode-collision && + mkdir target-dir && + + empty_obj_hex=$(git hash-object -w --stdin objs <<-EOF && + 100644 blob ${empty_obj_hex} ${dir}/x + 100644 blob ${empty_obj_hex} ${dir}/y + 100644 blob ${empty_obj_hex} ${dir}/z + 120000 blob ${symlink_hex} ${symlink} + EOF + + git update-index --index-info