From d9b0a6f822f773a61bcc507d252ca46da660b70b Mon Sep 17 00:00:00 2001 From: Eugen-Bleck Date: Wed, 14 May 2025 05:06:35 -0700 Subject: [PATCH] fix: match arg case in errors --- src/google/adk/cli/cli_tools_click.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/google/adk/cli/cli_tools_click.py b/src/google/adk/cli/cli_tools_click.py index d06d058309..564b7680aa 100644 --- a/src/google/adk/cli/cli_tools_click.py +++ b/src/google/adk/cli/cli_tools_click.py @@ -55,6 +55,19 @@ class HelpfulCommand(click.Command): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) + + @staticmethod + def _format_missing_arg_error(click_exception): + """Format the missing argument error with uppercase parameter name. + + Args: + click_exception: The MissingParameter exception from Click. + + Returns: + str: Formatted error message with uppercase parameter name. + """ + name = click_exception.param.name + return f"Missing required argument: {name.upper()}" def parse_args(self, ctx, args): """Override the parse_args method to show help text on error. @@ -73,8 +86,10 @@ def parse_args(self, ctx, args): try: return super().parse_args(ctx, args) except click.MissingParameter as exc: + error_message = self._format_missing_arg_error(exc) + click.echo(ctx.get_help()) - click.secho(f"\nError: {str(exc)}", fg="red", err=True) + click.secho(f"\nError: {error_message}", fg="red", err=True) ctx.exit(2)