]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t1309: use a neutral branch name in the `onbranch` test cases
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Thu, 19 Nov 2020 11:41:34 +0000 (11:41 +0000)
committerJunio C Hamano <gitster@pobox.com>
Thu, 19 Nov 2020 19:41:06 +0000 (11:41 -0800)
The `onbranch` test cases touched by this patch do not actually try to
include any other config. Their purpose is to avoid regressing on two
bugs in the `include.onbranch:<name>.path` code that we fixed in the
past, bugs that are actually unrelated to any concrete branch name.

The first bug was fixed in 85fe0e800ca (config: work around bug with
includeif:onbranch and early config, 2019-07-31). Essentially, when
reading early config, there would be a catch-22 trying to access the
refs, and therefore we simply cannot evaluate the condition at that
point. The test case ensures that we avoid emitting this bogus message:

BUG: refs.c:1851: attempting to get main_ref_store outside of repository

The second test case concerns the non-Git scenario, where we simply do
not have a current branch to begin with (because we don't have a
repository in the first place), and the test case was introduced in
22932d9169f (config: stop checking whether the_repository is NULL,
2019-08-06) to ensure that we don't cause a segmentation fault should
the code still incorrectly try to look at any ref.

In short, neither of these two test cases will ever look at a current
branch name, even in case of regressions. Therefore, the actual branch
name does not matter at all. We can therefore easily avoid
racially-charged branch names here, and that's what this patch does.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t1309-early-config.sh

index ebb8e1aecbf424e1ec2d522bd7806c78992bedb6..b4a9158307fd210079211165fb507a037ceb75f0 100755 (executable)
@@ -91,11 +91,11 @@ test_expect_failure 'ignore .git/ with invalid config' '
 
 test_expect_success 'early config and onbranch' '
        echo "[broken" >broken &&
-       test_with_config "[includeif \"onbranch:master\"]path=../broken"
+       test_with_config "[includeif \"onbranch:topic\"]path=../broken"
 '
 
 test_expect_success 'onbranch config outside of git repo' '
-       test_config_global includeIf.onbranch:master.path non-existent &&
+       test_config_global includeIf.onbranch:topic.path non-existent &&
        nongit git help
 '