summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2017-07-08 20:47:23 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2017-07-08 20:47:23 +0100
commit9dbb304f9a8405bd7b93e26c6603fd9883bd598e (patch)
tree159a23d2377619c7dd6dc829686b891860fa5bd7
parent5e493b95a805efe689f3c34f50731db568978c4a (diff)
test suite: badcommit-fixup: Check core.sharedRepository works
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rwxr-xr-xtests/tests/badcommit-rewrite17
1 files changed, 16 insertions, 1 deletions
diff --git a/tests/tests/badcommit-rewrite b/tests/tests/badcommit-rewrite
index b7fc701..3e2f37e 100755
--- a/tests/tests/badcommit-rewrite
+++ b/tests/tests/badcommit-rewrite
@@ -5,7 +5,12 @@ set -e
t-setup-import examplegit
t-tstunt-parsechangelog
-cd example
+cd $tmp/git/$p.git
+git config core.sharedRepository true
+chmod -R g+w objects
+umask 022
+
+cd $tmp/example
suite=stable
@@ -26,6 +31,9 @@ t-has-parent-or-is $rstable $badcommit
fixup=${DGIT_BADCOMMIT_FIXUP-dgit-badcommit-fixup}
cd $tmp/git/$p.git
+git gc --aggressive --prune=all
+rmdir objects/* ||:
+
$fixup --real
cd $tmp/$p
@@ -44,4 +52,11 @@ t-dgit fetch stable
t-expect-fail "child $rstable lacks parent $badcommit" \
t-has-parent-or-is $rstable $badcommit
+check_shared () {
+ find "$1" -perm -200 \! -perm -020 -ls |tee $tmp/badperm
+ test -f $tmp/badperm -a ! -s $tmp/badperm
+}
+
+check_shared $tmp/git/$p.git/objects
+
t-ok