Patrick Steinhardt <ps@xxxxxx> writes: > In t1400, we have a test that exercises whether we print a warning > message as expected when the reflog contains entries which have a gap > between the old entry's new object ID and the new entry's old object ID. > While the logic should apply to all ref backends, the test setup writes > into `.git/logs` directly and is thus "files"-backend specific. > > Refactor the test to instead use `git reflog delete` to create the gap > and drop the REFFILES prerequisite. This rewrite looks good. Instead of mucking with the implementation detail, we achieve the same with proper use of the tools provided. Very nice. Thanks. > Signed-off-by: Patrick Steinhardt <ps@xxxxxx> > --- > t/t1400-update-ref.sh | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/t/t1400-update-ref.sh b/t/t1400-update-ref.sh > index 3294b7ce08..3aeb103d34 100755 > --- a/t/t1400-update-ref.sh > +++ b/t/t1400-update-ref.sh > @@ -426,15 +426,15 @@ test_expect_success 'Query "main@{2005-05-28}" (past end of history)' ' > rm -f expect > git update-ref -d $m > > -test_expect_success REFFILES 'query reflog with gap' ' > +test_expect_success 'query reflog with gap' ' > test_when_finished "git update-ref -d $m" && > > - git update-ref $m $F && > - cat >.git/logs/$m <<-EOF && > - $Z $A $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> 1117150320 -0500 > - $A $B $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> 1117150380 -0500 > - $D $F $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> 1117150680 -0500 > - EOF > + GIT_COMMITTER_DATE="1117150320 -0500" git update-ref $m $A && > + GIT_COMMITTER_DATE="1117150380 -0500" git update-ref $m $B && > + GIT_COMMITTER_DATE="1117150480 -0500" git update-ref $m $C && > + GIT_COMMITTER_DATE="1117150580 -0500" git update-ref $m $D && > + GIT_COMMITTER_DATE="1117150680 -0500" git update-ref $m $F && > + git reflog delete $m@{2} && > > git rev-parse --verify "main@{2005-05-26 23:33:01}" >actual 2>stderr && > echo "$B" >expect &&