On Thu, Sep 29, 2016 at 12:06:15PM -0700, Junio C Hamano wrote:

> I think it deserves a separate patch and the result is more
> understandable.  I've queued this for now (on top of a revised 1/4
> that uses GIT_CONFIG_SYSTEM_PATH instead).

Thanks, makes sense (and I like the new variable name better, by the
way).

> -- >8 --
> From: Jeff King <p...@peff.net>
> Date: Thu, 29 Sep 2016 11:29:10 -0700
> Subject: [PATCH] t1300: check also system-wide configuration file in
>  --show-origin tests
> 
> Because we used to run our tests with GIT_CONFIG_NOSYSTEM, these did
> not test that the system-wide configuration file is also read and
> shown as one of the origins.  Create a custom/fake system-wide
> configuration file and make sure it appears in the output, using the
> newly introduced GIT_CONFIG_SYSTEM_PATH mechanism.
> 
> Signed-off-by: Junio C Hamano <gits...@pobox.com>

Good description.

Signed-off-by: Jeff King <p...@peff.net>

of course.

> @@ -1304,6 +1315,7 @@ test_expect_success '--show-origin with --get-regexp' '
>               file:$HOME/.gitconfig   user.global true
>               file:.git/config        user.local true
>       EOF
> +     GIT_CONFIG_SYSTEM_PATH=$HOME/etc-gitconfig \
>       git config --show-origin --get-regexp "user\.[g|l].*" >output &&
>       test_cmp expect output
>  '

This is one is trying to do a multi-file lookup, but we couldn't look in
the system config before. But to naturally extend it, it ought to look
like this on top:

diff --git a/t/t1300-repo-config.sh b/t/t1300-repo-config.sh
index d2476a8..4dd5ce3 100755
--- a/t/t1300-repo-config.sh
+++ b/t/t1300-repo-config.sh
@@ -1310,11 +1310,12 @@ test_expect_success '--show-origin with single file' '
 
 test_expect_success '--show-origin with --get-regexp' '
        cat >expect <<-EOF &&
+               file:$HOME/etc-gitconfig        user.system true
                file:$HOME/.gitconfig   user.global true
                file:.git/config        user.local true
        EOF
        GIT_ETC_GITCONFIG=$HOME/etc-gitconfig \
-       git config --show-origin --get-regexp "user\.[g|l].*" >output &&
+       git config --show-origin --get-regexp "user\.[g|l|s].*" >output &&
        test_cmp expect output
 '
 
> @@ -1312,6 +1324,7 @@ test_expect_success '--show-origin getting a single 
> key' '
>       cat >expect <<-\EOF &&
>               file:.git/config        local
>       EOF
> +     GIT_CONFIG_SYSTEM_PATH=$HOME/etc-gitconfig \
>       git config --show-origin user.override >output &&
>       test_cmp expect output
>  '

And I was tempted to say this one should not need to care, but I guess
it is testing that we correctly read the override from the local config
over the global one. So likewise, it is good to check that we also
override the system config (it does not effect the "expect" output, but
that does not mean it is not enhancing the test).

-Peff

Reply via email to