]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t: use update-ref and show-ref to reading/writing refs
authorHan-Wen Nienhuys <hanwen@google.com>
Wed, 20 May 2020 17:36:08 +0000 (17:36 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 20 May 2020 17:39:01 +0000 (10:39 -0700)
Reading and writing .git/refs/* assumes that refs are stored in the 'files'
ref backend.

Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t0002-gitfile.sh
t/t1400-update-ref.sh
t/t1506-rev-parse-diagnosis.sh
t/t6050-replace.sh
t/t9020-remote-svn.sh

index 0aa9908ea12d7592841e10ac09afe8b36f37ce7f..960ed150cb59055fb3f597a0cc80542828ac4ebb 100755 (executable)
@@ -62,7 +62,7 @@ test_expect_success 'check commit-tree' '
 '
 
 test_expect_success 'check rev-list' '
-       echo $SHA >"$REAL/HEAD" &&
+       git update-ref "HEAD" "$SHA" &&
        test "$SHA" = "$(git rev-list HEAD)"
 '
 
index e1197ac8189b942a3ab17511b30d97069c5c597e..27171f826129168aa1e52262e2b2a9b4ca327989 100755 (executable)
@@ -37,15 +37,15 @@ test_expect_success setup '
 
 test_expect_success "create $m" '
        git update-ref $m $A &&
-       test $A = $(cat .git/$m)
+       test $A = $(git show-ref -s --verify $m)
 '
 test_expect_success "create $m with oldvalue verification" '
        git update-ref $m $B $A &&
-       test $B = $(cat .git/$m)
+       test $B = $(git show-ref -s --verify $m)
 '
 test_expect_success "fail to delete $m with stale ref" '
        test_must_fail git update-ref -d $m $A &&
-       test $B = "$(cat .git/$m)"
+       test $B = "$(git show-ref -s --verify $m)"
 '
 test_expect_success "delete $m" '
        test_when_finished "rm -f .git/$m" &&
@@ -56,7 +56,7 @@ test_expect_success "delete $m" '
 test_expect_success "delete $m without oldvalue verification" '
        test_when_finished "rm -f .git/$m" &&
        git update-ref $m $A &&
-       test $A = $(cat .git/$m) &&
+       test $A = $(git show-ref -s --verify $m) &&
        git update-ref -d $m &&
        test_path_is_missing .git/$m
 '
@@ -69,15 +69,15 @@ test_expect_success "fail to create $n" '
 
 test_expect_success "create $m (by HEAD)" '
        git update-ref HEAD $A &&
-       test $A = $(cat .git/$m)
+       test $A = $(git show-ref -s --verify $m)
 '
 test_expect_success "create $m (by HEAD) with oldvalue verification" '
        git update-ref HEAD $B $A &&
-       test $B = $(cat .git/$m)
+       test $B = $(git show-ref -s --verify $m)
 '
 test_expect_success "fail to delete $m (by HEAD) with stale ref" '
        test_must_fail git update-ref -d HEAD $A &&
-       test $B = $(cat .git/$m)
+       test $B = $(git show-ref -s --verify $m)
 '
 test_expect_success "delete $m (by HEAD)" '
        test_when_finished "rm -f .git/$m" &&
@@ -178,14 +178,14 @@ test_expect_success '--no-create-reflog overrides core.logAllRefUpdates=always'
 
 test_expect_success "create $m (by HEAD)" '
        git update-ref HEAD $A &&
-       test $A = $(cat .git/$m)
+       test $A = $(git show-ref -s --verify $m)
 '
 test_expect_success 'pack refs' '
        git pack-refs --all
 '
 test_expect_success "move $m (by HEAD)" '
        git update-ref HEAD $B $A &&
-       test $B = $(cat .git/$m)
+       test $B = $(git show-ref -s --verify $m)
 '
 test_expect_success "delete $m (by HEAD) should remove both packed and loose $m" '
        test_when_finished "rm -f .git/$m" &&
@@ -255,7 +255,7 @@ test_expect_success '(not) change HEAD with wrong SHA1' '
 '
 test_expect_success "(not) changed .git/$m" '
        test_when_finished "rm -f .git/$m" &&
-       ! test $B = $(cat .git/$m)
+       ! test $B = $(git show-ref -s --verify $m)
 '
 
 rm -f .git/logs/refs/heads/master
@@ -263,19 +263,19 @@ test_expect_success "create $m (logged by touch)" '
        test_config core.logAllRefUpdates false &&
        GIT_COMMITTER_DATE="2005-05-26 23:30" \
        git update-ref --create-reflog HEAD $A -m "Initial Creation" &&
-       test $A = $(cat .git/$m)
+       test $A = $(git show-ref -s --verify $m)
 '
 test_expect_success "update $m (logged by touch)" '
        test_config core.logAllRefUpdates false &&
        GIT_COMMITTER_DATE="2005-05-26 23:31" \
        git update-ref HEAD $B $A -m "Switch" &&
-       test $B = $(cat .git/$m)
+       test $B = $(git show-ref -s --verify $m)
 '
 test_expect_success "set $m (logged by touch)" '
        test_config core.logAllRefUpdates false &&
        GIT_COMMITTER_DATE="2005-05-26 23:41" \
        git update-ref HEAD $A &&
-       test $A = $(cat .git/$m)
+       test $A = $(git show-ref -s --verify $m)
 '
 
 test_expect_success 'empty directory removal' '
@@ -319,19 +319,19 @@ test_expect_success "create $m (logged by config)" '
        test_config core.logAllRefUpdates true &&
        GIT_COMMITTER_DATE="2005-05-26 23:32" \
        git update-ref HEAD $A -m "Initial Creation" &&
-       test $A = $(cat .git/$m)
+       test $A = $(git show-ref -s --verify $m)
 '
 test_expect_success "update $m (logged by config)" '
        test_config core.logAllRefUpdates true &&
        GIT_COMMITTER_DATE="2005-05-26 23:33" \
        git update-ref HEAD'" $B $A "'-m "Switch" &&
-       test $B = $(cat .git/$m)
+       test $B = $(git show-ref -s --verify $m)
 '
 test_expect_success "set $m (logged by config)" '
        test_config core.logAllRefUpdates true &&
        GIT_COMMITTER_DATE="2005-05-26 23:43" \
        git update-ref HEAD $A &&
-       test $A = $(cat .git/$m)
+       test $A = $(git show-ref -s --verify $m)
 '
 
 cat >expect <<EOF
index 52edcbdcc3272ed34854017680430e14796a04a1..dbf690b9c1ba492dff629ac75c9cadd5d4887095 100755 (executable)
@@ -207,7 +207,7 @@ test_expect_success 'arg before dashdash must be a revision (ambiguous)' '
        {
                # we do not want to use rev-parse here, because
                # we are testing it
-               cat .git/refs/heads/foobar &&
+               git show-ref -s refs/heads/foobar &&
                printf "%s\n" --
        } >expect &&
        git rev-parse foobar -- >actual &&
index e7e64e085ddcfe7d7cf4df844472a6bf456ab079..c80dc10b8f12581842fd3ad09d1dc459e5addbdf 100755 (executable)
@@ -135,7 +135,7 @@ test_expect_success 'tag replaced commit' '
 test_expect_success '"git fsck" works' '
      git fsck master >fsck_master.out &&
      test_i18ngrep "dangling commit $R" fsck_master.out &&
-     test_i18ngrep "dangling tag $(cat .git/refs/tags/mytag)" fsck_master.out &&
+     test_i18ngrep "dangling tag $(git show-ref -s refs/tags/mytag)" fsck_master.out &&
      test -z "$(git fsck)"
 '
 
index 6fca08e5e35bd35cab5b97654b4a852ac28c9a34..9fcfa969a9b4604b1c9bdfff1dd3f58a613b95bb 100755 (executable)
@@ -48,8 +48,8 @@ test_expect_success REMOTE_SVN 'simple fetch' '
 '
 
 test_debug '
-       cat .git/refs/svn/svnsim/master
-       cat .git/refs/remotes/svnsim/master
+       git show-ref -s refs/svn/svnsim/master
+       git show-ref -s refs/remotes/svnsim/master
 '
 
 test_expect_success REMOTE_SVN 'repeated fetch, nothing shall change' '