t1400: use git rev-parse for testing PSEUDOREF existence

This will allow these tests to run with alternative ref backends

Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Han-Wen Nienhuys 2020-07-16 18:45:39 +00:00 committed by Junio C Hamano
parent 523fa69c36
commit 0b7de6c683

View File

@ -475,57 +475,57 @@ test_expect_success 'git cat-file blob master@{2005-05-26 23:42}:F (expect OTHER
test_expect_success 'given old value for missing pseudoref, do not create' '
test_must_fail git update-ref PSEUDOREF $A $B 2>err &&
test_path_is_missing .git/PSEUDOREF &&
test_must_fail git rev-parse PSEUDOREF &&
test_i18ngrep "could not read ref" err
'
test_expect_success 'create pseudoref' '
git update-ref PSEUDOREF $A &&
test $A = $(cat .git/PSEUDOREF)
test $A = $(git rev-parse PSEUDOREF)
'
test_expect_success 'overwrite pseudoref with no old value given' '
git update-ref PSEUDOREF $B &&
test $B = $(cat .git/PSEUDOREF)
test $B = $(git rev-parse PSEUDOREF)
'
test_expect_success 'overwrite pseudoref with correct old value' '
git update-ref PSEUDOREF $C $B &&
test $C = $(cat .git/PSEUDOREF)
test $C = $(git rev-parse PSEUDOREF)
'
test_expect_success 'do not overwrite pseudoref with wrong old value' '
test_must_fail git update-ref PSEUDOREF $D $E 2>err &&
test $C = $(cat .git/PSEUDOREF) &&
test $C = $(git rev-parse PSEUDOREF) &&
test_i18ngrep "unexpected object ID" err
'
test_expect_success 'delete pseudoref' '
git update-ref -d PSEUDOREF &&
test_path_is_missing .git/PSEUDOREF
test_must_fail git rev-parse PSEUDOREF
'
test_expect_success 'do not delete pseudoref with wrong old value' '
git update-ref PSEUDOREF $A &&
test_must_fail git update-ref -d PSEUDOREF $B 2>err &&
test $A = $(cat .git/PSEUDOREF) &&
test $A = $(git rev-parse PSEUDOREF) &&
test_i18ngrep "unexpected object ID" err
'
test_expect_success 'delete pseudoref with correct old value' '
git update-ref -d PSEUDOREF $A &&
test_path_is_missing .git/PSEUDOREF
test_must_fail git rev-parse PSEUDOREF
'
test_expect_success 'create pseudoref with old OID zero' '
git update-ref PSEUDOREF $A $Z &&
test $A = $(cat .git/PSEUDOREF)
test $A = $(git rev-parse PSEUDOREF)
'
test_expect_success 'do not overwrite pseudoref with old OID zero' '
test_when_finished git update-ref -d PSEUDOREF &&
test_must_fail git update-ref PSEUDOREF $B $Z 2>err &&
test $A = $(cat .git/PSEUDOREF) &&
test $A = $(git rev-parse PSEUDOREF) &&
test_i18ngrep "already exists" err
'