Re: [PATCH v7 04/10] config: make scope_name non-static and rename it
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 10, 2020, 18:02 UTC
- Message-ID
- <xmqqd0am1fsc.fsf@gitster-ct.c.googlers.com>
- In-Reply-To
- <14b0f278196ab9ab130402c2ef79adb0543655ef.1581294660.git.gitgitgadget@gmail.com>
"Matthew Rogers via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 7 quoted lines
> From: Matthew Rogers <mattr94@gmail.com> > > To prepare for the upcoming --show-scope option, we require the ability > to convert a config_scope enum to a string. As this was originally > implemented as a static function 'scope_name()' in > t/helper/test-config.c, we expose it via config.h and give it a less > ambiguous name 'config_scope_name()'
Show 27 quoted lines
> Signed-off-by: Matthew Rogers <mattr94@gmail.com>
> ---
> config.c | 16 ++++++++++++++++
> config.h | 2 ++
> t/helper/test-config.c | 17 +----------------
> t/t1308-config-set.sh | 2 +-
> 4 files changed, 20 insertions(+), 17 deletions(-)
>
> diff --git a/config.c b/config.c
> index d75f88ca0c..83bb98d65e 100644
> --- a/config.c
> +++ b/config.c
> @@ -3297,6 +3297,22 @@ const char *current_config_origin_type(void)
> }
> }
>
> +const char *config_scope_name(enum config_scope scope)
> +{
> + switch (scope) {
> + case CONFIG_SCOPE_SYSTEM:
> + return "system";
> + case CONFIG_SCOPE_GLOBAL:
> + return "global";
> + case CONFIG_SCOPE_REPO:
> + return "repo";
> + case CONFIG_SCOPE_CMDLINE:
> + return "command line";The change from "cmdline" to "command line" does need to happen before the end of the series, but I do not think it should happen here, especialy given that the proposed log message explains that this step is to expose scope_name() under a better name (which is a very good split point).
How are you reviewing the patches in your own series before sending them out? This round is better than the previous rounds where we didn't have a matching change to the tests so "make test" may not have passed in the middle of the series, though...
Show 76 quoted lines
> + default:
> + return "unknown";
> + }
> +}
> +
> const char *current_config_name(void)
> {
> const char *name;
> diff --git a/config.h b/config.h
> index 91fd4c5e96..dcb8c274d4 100644
> --- a/config.h
> +++ b/config.h
> @@ -35,6 +35,7 @@ struct object_id;
>
> #define CONFIG_REGEX_NONE ((void *)1)
>
> +
> struct git_config_source {
> unsigned int use_stdin:1;
> const char *file;
> @@ -301,6 +302,7 @@ enum config_scope {
> CONFIG_SCOPE_REPO,
> CONFIG_SCOPE_CMDLINE,
> };
> +const char *config_scope_name(enum config_scope scope);
>
> enum config_scope current_config_scope(void);
> const char *current_config_origin_type(void);
> diff --git a/t/helper/test-config.c b/t/helper/test-config.c
> index 214003d5b2..1e3bc7c8f4 100644
> --- a/t/helper/test-config.c
> +++ b/t/helper/test-config.c
> @@ -37,21 +37,6 @@
> *
> */
>
> -static const char *scope_name(enum config_scope scope)
> -{
> - switch (scope) {
> - case CONFIG_SCOPE_SYSTEM:
> - return "system";
> - case CONFIG_SCOPE_GLOBAL:
> - return "global";
> - case CONFIG_SCOPE_REPO:
> - return "repo";
> - case CONFIG_SCOPE_CMDLINE:
> - return "cmdline";
> - default:
> - return "unknown";
> - }
> -}
> static int iterate_cb(const char *var, const char *value, void *data)
> {
> static int nr;
> @@ -63,7 +48,7 @@ static int iterate_cb(const char *var, const char *value, void *data)
> printf("value=%s\n", value ? value : "(null)");
> printf("origin=%s\n", current_config_origin_type());
> printf("name=%s\n", current_config_name());
> - printf("scope=%s\n", scope_name(current_config_scope()));
> + printf("scope=%s\n", config_scope_name(current_config_scope()));
>
> return 0;
> }
> diff --git a/t/t1308-config-set.sh b/t/t1308-config-set.sh
> index 7b4e1a63eb..5f3e71a160 100755
> --- a/t/t1308-config-set.sh
> +++ b/t/t1308-config-set.sh
> @@ -265,7 +265,7 @@ test_expect_success 'iteration shows correct origins' '
> value=from-cmdline
> origin=command line
> name=
> - scope=cmdline
> + scope=command line
> EOF
> GIT_CONFIG_PARAMETERS=$cmdline_config test-tool config iterate >actual &&
> test_cmp expect actual