t0008: avoid brace expansion
[gitweb.git] / t / t9902-completion.sh
index 0c0cd4100ed1cfbfb106c1145975d5c33cc3e5d9..256e6a0b3f3d001482cf0a21605f6a860d935d58 100755 (executable)
@@ -63,7 +63,7 @@ run_completion ()
        local _cword
        _words=( $1 )
        (( _cword = ${#_words[@]} - 1 ))
-       _git && print_comp
+       __git_wrap__git_main && print_comp
 }
 
 test_completion ()
@@ -179,6 +179,7 @@ test_expect_success 'double dash "git" itself' '
        --bare Z
        --version Z
        --exec-path Z
+       --exec-path=
        --html-path Z
        --info-path Z
        --work-tree=
@@ -207,7 +208,11 @@ test_expect_success 'double dash "git checkout"' '
 test_expect_success 'general options' '
        test_completion "git --ver" "--version " &&
        test_completion "git --hel" "--help " &&
-       test_completion "git --exe" "--exec-path " &&
+       sed -e "s/Z$//" >expected <<-\EOF &&
+       --exec-path Z
+       --exec-path=
+       EOF
+       test_completion "git --exe" &&
        test_completion "git --htm" "--html-path " &&
        test_completion "git --pag" "--paginate " &&
        test_completion "git --no-p" "--no-pager " &&
@@ -218,4 +223,21 @@ test_expect_success 'general options' '
        test_completion "git --inf" "--info-path " &&
        test_completion "git --no-r" "--no-replace-objects "
 '
+
+test_expect_success 'general options plus command' '
+       test_completion "git --version check" "checkout " &&
+       test_completion "git --paginate check" "checkout " &&
+       test_completion "git --git-dir=foo check" "checkout " &&
+       test_completion "git --bare check" "checkout " &&
+       test_completion "git --help des" "describe " &&
+       test_completion "git --exec-path=foo check" "checkout " &&
+       test_completion "git --html-path check" "checkout " &&
+       test_completion "git --no-pager check" "checkout " &&
+       test_completion "git --work-tree=foo check" "checkout " &&
+       test_completion "git --namespace=foo check" "checkout " &&
+       test_completion "git --paginate check" "checkout " &&
+       test_completion "git --info-path check" "checkout " &&
+       test_completion "git --no-replace-objects check" "checkout "
+'
+
 test_done