Merge branch 'jl/maint-pull-tags-doc'
[gitweb.git] / t / t4200-rerere.sh
index 876f09a6fef39fa2f7ef1ba8bd4898225bd5125a..36255d608a7af7d85f479986e302138401f25a8d 100755 (executable)
@@ -166,6 +166,8 @@ test_expect_success 'first postimage wins' '
        git commit -q -a -m "prefer first over second" &&
        test -f $rr/postimage &&
 
+       oldmtimepost=$(test-chmtime -v -60 $rr/postimage | cut -f 1) &&
+
        git checkout -b third master &&
        git show second^:a1 | sed "s/To die: t/To die! T/" >a1 &&
        git commit -q -a -m third &&
@@ -176,6 +178,11 @@ test_expect_success 'first postimage wins' '
        test_cmp expect a1
 '
 
+test_expect_success 'rerere updates postimage timestamp' '
+       newmtimepost=$(test-chmtime -v +0 $rr/postimage | cut -f 1) &&
+       test $oldmtimepost -lt $newmtimepost
+'
+
 test_expect_success 'rerere clear' '
        rm $rr/postimage &&
        echo "$sha1     a1" | perl -pe "y/\012/\000/" >.git/MERGE_RR &&
@@ -198,18 +205,19 @@ test_expect_success 'set up for garbage collection tests' '
        almost_60_days_ago=$((60-60*86400)) &&
        just_over_60_days_ago=$((-1-60*86400)) &&
 
-       test-chmtime =$almost_60_days_ago $rr/preimage &&
+       test-chmtime =$just_over_60_days_ago $rr/preimage &&
+       test-chmtime =$almost_60_days_ago $rr/postimage &&
        test-chmtime =$almost_15_days_ago $rr2/preimage
 '
 
-test_expect_success 'garbage collection preserves young records' '
+test_expect_success 'gc preserves young or recently used records' '
        git rerere gc &&
        test -f $rr/preimage &&
        test -f $rr2/preimage
 '
 
 test_expect_success 'old records rest in peace' '
-       test-chmtime =$just_over_60_days_ago $rr/preimage &&
+       test-chmtime =$just_over_60_days_ago $rr/postimage &&
        test-chmtime =$just_over_15_days_ago $rr2/preimage &&
        git rerere gc &&
        ! test -f $rr/preimage &&