On Thu, Jan 24, 2013 at 03:07:42PM -0800, Junio C Hamano wrote:
> When you have random build artifacts in your build directory, left
> behind by running "make" while on another branch, the "git help -a"
> command run by __git_list_all_commands in the completion script that
> is being tested does not have a way to know that they are not part
> of the subcommands this build will ship. Such extra subcommands may
> come from the user's $PATH. They will interfere with the tests that
> expect a certain prefix to uniquely expand to a known completion.
>
> Instrument the completion script and give it a way for us to tell
> what (subset of) subcommands we are going to ship.
>
> Also add a test to "git --help <prefix><TAB>" expansion. It needs
> to show not just commands but some selected documentation pages.
>
> Based on an idea by Jeff King.
>
> Signed-off-by: Junio C Hamano <[email protected]>
> ---
> contrib/completion/git-completion.bash | 11 ++++++++++-
> t/t9902-completion.sh | 25 ++++++++++++++++++++++++-
> 2 files changed, 34 insertions(+), 2 deletions(-)
This looks good to me.
The only thing I might add is a test just to double-check that "git help
-a" is parsed correctly. Like:
test_expect_success 'command completion works without test harness' '
GIT_TESTING_COMMAND_COMPLETION= run_completion "git bun" &&
grep "^bundle\$" out
'
(we know we are running bash here, so the one-shot variable is OK to be
used with a function).
-Peff
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html