mirror of
https://github.com/git/git
synced 2024-08-27 11:39:22 +00:00
completion: bisect: complete bad, new, old, and help subcommands
The bad, new, old and help subcommands to git-bisect(1) are not completed. Add the bad, new, old, and help subcommands to the appropriate lists such that the commands and their possible ref arguments are completed. Add tests. Signed-off-by: Britton Leo Kerin <britton.kerin@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
db489ea4f3
commit
e1f74dd58b
|
@ -1449,7 +1449,7 @@ _git_bisect ()
|
||||||
{
|
{
|
||||||
__git_has_doubledash && return
|
__git_has_doubledash && return
|
||||||
|
|
||||||
local subcommands="start bad good skip reset visualize replay log run"
|
local subcommands="start bad new good old skip reset visualize replay log run help"
|
||||||
local subcommand="$(__git_find_on_cmdline "$subcommands")"
|
local subcommand="$(__git_find_on_cmdline "$subcommands")"
|
||||||
if [ -z "$subcommand" ]; then
|
if [ -z "$subcommand" ]; then
|
||||||
__git_find_repo_path
|
__git_find_repo_path
|
||||||
|
@ -1462,7 +1462,7 @@ _git_bisect ()
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case "$subcommand" in
|
case "$subcommand" in
|
||||||
bad|good|reset|skip|start)
|
bad|new|good|old|reset|skip|start)
|
||||||
__git_complete_refs
|
__git_complete_refs
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
|
|
@ -1264,6 +1264,77 @@ test_expect_success 'git switch - with no options, complete local branches and u
|
||||||
EOF
|
EOF
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'git bisect - when not bisecting, complete only replay and start subcommands' '
|
||||||
|
test_completion "git bisect " <<-\EOF
|
||||||
|
replay Z
|
||||||
|
start Z
|
||||||
|
EOF
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'setup for git-bisect tests requiring a repo' '
|
||||||
|
git init git-bisect &&
|
||||||
|
(
|
||||||
|
cd git-bisect &&
|
||||||
|
echo "initial contents" >file &&
|
||||||
|
git add file &&
|
||||||
|
git commit -am "Initial commit" &&
|
||||||
|
git tag initial &&
|
||||||
|
echo "new line" >>file &&
|
||||||
|
git commit -am "First change" &&
|
||||||
|
echo "another new line" >>file &&
|
||||||
|
git commit -am "Second change" &&
|
||||||
|
git tag final
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'git bisect - start subcommand arguments before double-dash are completed as revs' '
|
||||||
|
(
|
||||||
|
cd git-bisect &&
|
||||||
|
test_completion "git bisect start " <<-\EOF
|
||||||
|
HEAD Z
|
||||||
|
final Z
|
||||||
|
initial Z
|
||||||
|
master Z
|
||||||
|
EOF
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
|
# Note that these arguments are <pathspec>s, which in practice the fallback
|
||||||
|
# completion (not the git completion) later ends up completing as paths.
|
||||||
|
test_expect_success 'git bisect - start subcommand arguments after double-dash are not completed' '
|
||||||
|
(
|
||||||
|
cd git-bisect &&
|
||||||
|
test_completion "git bisect start final initial -- " ""
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'setup for git-bisect tests requiring ongoing bisection' '
|
||||||
|
(
|
||||||
|
cd git-bisect &&
|
||||||
|
git bisect start --term-new=custom_new --term-old=custom_old final initial
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'git-bisect - when bisecting all subcommands are candidates' '
|
||||||
|
(
|
||||||
|
cd git-bisect &&
|
||||||
|
test_completion "git bisect " <<-\EOF
|
||||||
|
start Z
|
||||||
|
bad Z
|
||||||
|
new Z
|
||||||
|
good Z
|
||||||
|
old Z
|
||||||
|
skip Z
|
||||||
|
reset Z
|
||||||
|
visualize Z
|
||||||
|
replay Z
|
||||||
|
log Z
|
||||||
|
run Z
|
||||||
|
help Z
|
||||||
|
EOF
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success 'git checkout - completes refs and unique remote branches for DWIM' '
|
test_expect_success 'git checkout - completes refs and unique remote branches for DWIM' '
|
||||||
test_completion "git checkout " <<-\EOF
|
test_completion "git checkout " <<-\EOF
|
||||||
HEAD Z
|
HEAD Z
|
||||||
|
|
Loading…
Reference in a new issue