]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t1300: fix unset of GIT_CONFIG_NOSYSTEM leaking into subsequent tests
authorPatrick Steinhardt <ps@pks.im>
Fri, 23 Apr 2021 05:47:15 +0000 (07:47 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 27 Apr 2021 06:15:34 +0000 (15:15 +0900)
In order to test whether the new GIT_CONFIG_SYSTEM environment variable
behaves as expected, we unset GIT_CONFIG_NOSYSTEM in one of our tests in
t1300. But because tests are not executed in a subshell, this unset
leaks into all subsequent tests and may thus cause them to fail in some
environments. These failures are easily reproducable with `make
prefix=/root test`.

Fix the issue by not using `sane_unset GIT_CONFIG_NOSYSTEM`, but instead
just manually add it to the environment of the two command invocations
which need it.

Reported-by: SZEDER Gábor <szeder.dev@gmail.com>
Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t1300-config.sh

index 0f92dfe6fbc652d8cdb791f1834b5b75a23abfa8..ec599baebab1f66d191ce676833474757aacde45 100755 (executable)
@@ -2092,21 +2092,20 @@ test_expect_success 'override global and system config' '
        git config --show-scope --list >output &&
        test_cmp expect output &&
 
-       sane_unset GIT_CONFIG_NOSYSTEM &&
-
        cat >expect <<-EOF &&
        system  system.config=true
        global  global.config=true
        local   local.config=true
        EOF
-       GIT_CONFIG_SYSTEM=custom-system-config GIT_CONFIG_GLOBAL=custom-global-config \
+       GIT_CONFIG_NOSYSTEM=false GIT_CONFIG_SYSTEM=custom-system-config GIT_CONFIG_GLOBAL=custom-global-config \
                git config --show-scope --list >output &&
        test_cmp expect output &&
 
        cat >expect <<-EOF &&
        local   local.config=true
        EOF
-       GIT_CONFIG_SYSTEM=/dev/null GIT_CONFIG_GLOBAL=/dev/null git config --show-scope --list >output &&
+       GIT_CONFIG_NOSYSTEM=false GIT_CONFIG_SYSTEM=/dev/null GIT_CONFIG_GLOBAL=/dev/null \
+               git config --show-scope --list >output &&
        test_cmp expect output
 '