git-am.sh: fix initialization of the threeway variable
[gitweb.git] / t / t7701-repack-unpack-unreachable.sh
index b8d4cdea8cc661e27367bc942587b3b80b433051..b66e3838665ea47d748a7e1a64facd755ee32fb8 100755 (executable)
@@ -57,7 +57,7 @@ compare_mtimes ()
 {
        read tref rest &&
        while read t rest; do
-               test "$tref" = "$t" || break
+               test "$tref" = "$t" || return 1
        done
 }
 
@@ -109,4 +109,17 @@ test_expect_success 'do not bother loosening old objects' '
        test_must_fail git cat-file -p $obj2
 '
 
+test_expect_success 'keep packed objects found only in index' '
+       echo my-unique-content >file &&
+       git add file &&
+       git commit -m "make it reachable" &&
+       git gc &&
+       git reset HEAD^ &&
+       git reflog expire --expire=now --all &&
+       git add file &&
+       test-chmtime =-86400 .git/objects/pack/* &&
+       git gc --prune=1.hour.ago &&
+       git cat-file blob :file
+'
+
 test_done