]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t1407: require REFFILES for for_each_reflog test
authorHan-Wen Nienhuys <hanwen@google.com>
Mon, 31 May 2021 16:56:30 +0000 (16:56 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 2 Jun 2021 01:01:55 +0000 (10:01 +0900)
Add extensive comment why this test needs a REFFILES annotation.

I tried forcing universal reflog creation with core.logAllRefUpdates=true, but
that apparently also doesn't cause reflogs to be created for pseudorefs

Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
Reviewed-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t1407-worktree-ref-store.sh

index d3fe77751122b57d30cf2fcdf747b75fc3aec71a..ad8006c81397336fc5919858d0b13ec4d564b723 100755 (executable)
@@ -52,7 +52,14 @@ test_expect_success 'create_symref(FOO, refs/heads/main)' '
        test_cmp expected actual
 '
 
-test_expect_success 'for_each_reflog()' '
+# Some refs (refs/bisect/*, pseudorefs) are kept per worktree, so they should
+# only appear in the for-each-reflog output if it is called from the correct
+# worktree, which is exercised in this test. This test is poorly written (and
+# therefore marked REFFILES) for mulitple reasons: 1) it creates invalidly
+# formatted log entres. 2) it uses direct FS access for creating the reflogs. 3)
+# PSEUDO-WT and refs/bisect/random do not create reflogs by default, so it is
+# not testing a realistic scenario.
+test_expect_success REFFILES 'for_each_reflog()' '
        echo $ZERO_OID > .git/logs/PSEUDO-MAIN &&
        mkdir -p     .git/logs/refs/bisect &&
        echo $ZERO_OID > .git/logs/refs/bisect/random &&