X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=t%2Ft3300-funny-names.sh;h=c12270efab80e715e50440a0ae6d05555b055481;hb=162f41292167a800432fc6bbacfcd9f93a90b0c8;hp=897c37842207166fe9562ad789ddbfb7ad12ca96;hpb=5e80092f7e6db09a40a62e837ca3f74f0bc5ad73;p=git.git diff --git a/t/t3300-funny-names.sh b/t/t3300-funny-names.sh index 897c3784..c12270ef 100755 --- a/t/t3300-funny-names.sh +++ b/t/t3300-funny-names.sh @@ -9,13 +9,10 @@ This test tries pathnames with funny characters in the working tree, index, and tree objects. ' -# since FAT/NTFS does not allow tabs in filenames, skip this test -test "$(uname -o 2>/dev/null)" = Cygwin && exit 0 - . ./test-lib.sh p0='no-funny' -p1='tabs and spaces' +p1='tabs ," (dq) and spaces' p2='just space' cat >"$p0" <<\EOF @@ -27,6 +24,12 @@ EOF cat >"$p1" "$p0" echo 'Foo Bar Baz' >"$p2" +test -f "$p1" && cmp "$p0" "$p1" || { + # since FAT/NTFS does not allow tabs in filenames, skip this test + say 'Your filesystem does not allow tabs in filenames, test skipped.' + test_done +} + echo 'just space no-funny' >expected test_expect_success 'git-ls-files no-funny' \ @@ -37,9 +40,11 @@ test_expect_success 'git-ls-files no-funny' \ t0=`git-write-tree` echo "$t0" >t0 -echo 'just space +cat > expected <<\EOF +just space no-funny -"tabs\tand spaces"' >expected +"tabs\t,\" (dq) and spaces" +EOF test_expect_success 'git-ls-files with-funny' \ 'git-update-index --add "$p1" && git-ls-files >current && @@ -47,7 +52,7 @@ test_expect_success 'git-ls-files with-funny' \ echo 'just space no-funny -tabs and spaces' >expected +tabs ," (dq) and spaces' >expected test_expect_success 'git-ls-files -z with-funny' \ 'git-ls-files -z | tr \\0 \\012 >current && diff -u expected current' @@ -55,14 +60,18 @@ test_expect_success 'git-ls-files -z with-funny' \ t1=`git-write-tree` echo "$t1" >t1 -echo 'just space +cat > expected <<\EOF +just space no-funny -"tabs\tand spaces"' >expected +"tabs\t,\" (dq) and spaces" +EOF test_expect_success 'git-ls-tree with funny' \ 'git-ls-tree -r $t1 | sed -e "s/^[^ ]* //" >current && diff -u expected current' -echo 'A "tabs\tand spaces"' >expected +cat > expected <<\EOF +A "tabs\t,\" (dq) and spaces" +EOF test_expect_success 'git-diff-index with-funny' \ 'git-diff-index --name-status $t0 >current && diff -u expected current' @@ -72,7 +81,7 @@ test_expect_success 'git-diff-tree with-funny' \ diff -u expected current' echo 'A -tabs and spaces' >expected +tabs ," (dq) and spaces' >expected test_expect_success 'git-diff-index -z with-funny' \ 'git-diff-index -z --name-status $t0 | tr \\0 \\012 >current && diff -u expected current' @@ -81,53 +90,62 @@ test_expect_success 'git-diff-tree -z with-funny' \ 'git-diff-tree -z --name-status $t0 $t1 | tr \\0 \\012 >current && diff -u expected current' -echo 'CNUM no-funny "tabs\tand spaces"' >expected +cat > expected <<\EOF +CNUM no-funny "tabs\t,\" (dq) and spaces" +EOF test_expect_success 'git-diff-tree -C with-funny' \ 'git-diff-tree -C --find-copies-harder --name-status \ $t0 $t1 | sed -e 's/^C[0-9]*/CNUM/' >current && diff -u expected current' -echo 'RNUM no-funny "tabs\tand spaces"' >expected +cat > expected <<\EOF +RNUM no-funny "tabs\t,\" (dq) and spaces" +EOF test_expect_success 'git-diff-tree delete with-funny' \ 'git-update-index --force-remove "$p0" && git-diff-index -M --name-status \ $t0 | sed -e 's/^R[0-9]*/RNUM/' >current && diff -u expected current' -echo 'diff --git a/no-funny "b/tabs\tand spaces" +cat > expected <<\EOF +diff --git a/no-funny "b/tabs\t,\" (dq) and spaces" similarity index NUM% rename from no-funny -rename to "tabs\tand spaces"' >expected - +rename to "tabs\t,\" (dq) and spaces" +EOF test_expect_success 'git-diff-tree delete with-funny' \ 'git-diff-index -M -p $t0 | sed -e "s/index [0-9]*%/index NUM%/" >current && diff -u expected current' chmod +x "$p1" -echo 'diff --git a/no-funny "b/tabs\tand spaces" +cat > expected <<\EOF +diff --git a/no-funny "b/tabs\t,\" (dq) and spaces" old mode 100644 new mode 100755 similarity index NUM% rename from no-funny -rename to "tabs\tand spaces"' >expected - +rename to "tabs\t,\" (dq) and spaces" +EOF test_expect_success 'git-diff-tree delete with-funny' \ 'git-diff-index -M -p $t0 | sed -e "s/index [0-9]*%/index NUM%/" >current && diff -u expected current' -echo >expected ' "tabs\tand spaces" - 1 files changed, 0 insertions(+), 0 deletions(-)' +cat >expected <<\EOF + "tabs\t,\" (dq) and spaces" + 1 files changed, 0 insertions(+), 0 deletions(-) +EOF test_expect_success 'git-diff-tree rename with-funny applied' \ 'git-diff-index -M -p $t0 | git-apply --stat | sed -e "s/|.*//" -e "s/ *\$//" >current && diff -u expected current' -echo >expected ' no-funny - "tabs\tand spaces" - 2 files changed, 3 insertions(+), 3 deletions(-)' - +cat > expected <<\EOF + no-funny + "tabs\t,\" (dq) and spaces" + 2 files changed, 3 insertions(+), 3 deletions(-) +EOF test_expect_success 'git-diff-tree delete with-funny applied' \ 'git-diff-index -p $t0 | git-apply --stat | sed -e "s/|.*//" -e "s/ *\$//" >current &&