Merge branch 'nd/parseopt-completion'
Hotfix for recently graduated topic that give help to completion scripts from the Git subcommands that are being completed * nd/parseopt-completion: t9902: disable test on the list of merge-strategies under GETTEXT_POISON completion: clear cached --options when sourcing the completion script
This commit is contained in:
commit
87cc76fa3a
@ -280,6 +280,10 @@ __gitcomp ()
|
||||
esac
|
||||
}
|
||||
|
||||
# Clear the variables caching builtins' options when (re-)sourcing
|
||||
# the completion script.
|
||||
unset $(set |sed -ne 's/^\(__gitcomp_builtin_[a-zA-Z0-9_][a-zA-Z0-9_]*\)=.*/\1/p') 2>/dev/null
|
||||
|
||||
# This function is equivalent to
|
||||
#
|
||||
# __gitcomp "$(git xxx --git-completion-helper) ..."
|
||||
|
@ -1497,4 +1497,35 @@ do
|
||||
'
|
||||
done
|
||||
|
||||
test_expect_success 'sourcing the completion script clears cached commands' '
|
||||
__git_compute_all_commands &&
|
||||
verbose test -n "$__git_all_commands" &&
|
||||
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
||||
verbose test -z "$__git_all_commands"
|
||||
'
|
||||
|
||||
test_expect_success 'sourcing the completion script clears cached porcelain commands' '
|
||||
__git_compute_porcelain_commands &&
|
||||
verbose test -n "$__git_porcelain_commands" &&
|
||||
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
||||
verbose test -z "$__git_porcelain_commands"
|
||||
'
|
||||
|
||||
test_expect_success !GETTEXT_POISON 'sourcing the completion script clears cached merge strategies' '
|
||||
__git_compute_merge_strategies &&
|
||||
verbose test -n "$__git_merge_strategies" &&
|
||||
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
||||
verbose test -z "$__git_merge_strategies"
|
||||
'
|
||||
|
||||
test_expect_success 'sourcing the completion script clears cached --options' '
|
||||
__gitcomp_builtin checkout &&
|
||||
verbose test -n "$__gitcomp_builtin_checkout" &&
|
||||
__gitcomp_builtin notes_edit &&
|
||||
verbose test -n "$__gitcomp_builtin_notes_edit" &&
|
||||
. "$GIT_BUILD_DIR/contrib/completion/git-completion.bash" &&
|
||||
verbose test -z "$__gitcomp_builtin_checkout" &&
|
||||
verbose test -z "$__gitcomp_builtin_notes_edit"
|
||||
'
|
||||
|
||||
test_done
|
||||
|
Loading…
Reference in New Issue
Block a user