Code

test-lib: Replace uses of $(expr ...) by POSIX shell features.
[git.git] / t / t7005-editor.sh
index 44228b5ac12f5df9d6def93dc74e3687ba2d8e73..2f8404afbbc38e9bed17b1d3c9dde22ddcb2eaa2 100755 (executable)
@@ -4,8 +4,6 @@ test_description='GIT_EDITOR, core.editor, and stuff'
 
 . ./test-lib.sh
 
-OLD_TERM="$TERM"
-
 for i in GIT_EDITOR core_editor EDITOR VISUAL vi
 do
        cat >e-$i.sh <<-EOF
@@ -37,7 +35,7 @@ test_expect_success 'dumb should error out when falling back on vi' '
        if git commit --amend
        then
                echo "Oops?"
-               exit 1
+               false
        else
                : happy
        fi
@@ -89,6 +87,28 @@ do
        '
 done
 
-TERM="$OLD_TERM"
+if ! echo 'echo space > "$1"' > "e space.sh"
+then
+       say "Skipping; FS does not support spaces in filenames"
+       test_done
+       exit
+fi
+
+test_expect_success 'editor with a space' '
+
+       chmod a+x "e space.sh" &&
+       GIT_EDITOR="./e\ space.sh" git commit --amend &&
+       test space = "$(git show -s --pretty=format:%s)"
+
+'
+
+unset GIT_EDITOR
+test_expect_success 'core.editor with a space' '
+
+       git config core.editor \"./e\ space.sh\" &&
+       git commit --amend &&
+       test space = "$(git show -s --pretty=format:%s)"
+
+'
 
 test_done