summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rwxr-xr-xtests/bzr-single-commit.script2
-rwxr-xr-xtests/bzr-single-commit.setup2
-rwxr-xr-xtests/cvs-single-commit.script2
-rwxr-xr-xtests/cvs-single-commit.setup2
-rwxr-xr-xtests/git-backup-on-error-multiple-backups.script (renamed from tests/git-backup-on-error.script)7
-rwxr-xr-xtests/git-backup-on-error-multiple-backups.setup (renamed from tests/git-backup-on-error.setup)2
-rw-r--r--tests/git-backup-on-error-multiple-backups.stderr (renamed from tests/git-backup-on-error.stderr)0
-rw-r--r--tests/git-backup-on-error-multiple-backups.stdout (renamed from tests/git-backup-on-error.stdout)15
-rwxr-xr-xtests/git-backup-on-error-multiple-backups.teardown21
-rwxr-xr-xtests/git-backup-on-error-single-backup-is-removed-if-exists.script43
-rwxr-xr-xtests/git-backup-on-error-single-backup-is-removed-if-exists.setup47
-rwxr-xr-xtests/git-backup-on-error-single-backup-is-removed-if-exists.teardown21
-rwxr-xr-xtests/git-backup-on-error-single-backup.script51
-rwxr-xr-xtests/git-backup-on-error-single-backup.setup47
-rw-r--r--tests/git-backup-on-error-single-backup.stderr0
-rw-r--r--tests/git-backup-on-error-single-backup.stdout62
-rwxr-xr-xtests/git-backup-on-error-single-backup.teardown21
-rwxr-xr-xtests/git-single-commit.script2
-rwxr-xr-xtests/git-single-commit.setup2
-rwxr-xr-xtests/hg-single-commit.script2
-rwxr-xr-xtests/hg-single-commit.setup2
-rwxr-xr-xtests/make-tarball.script2
-rwxr-xr-xtests/make-tarball.setup2
-rwxr-xr-xtests/no-pushspec-pushall.script2
-rwxr-xr-xtests/pushspecs-only.script2
-rwxr-xr-xtests/setup_once2
-rwxr-xr-xtests/svn-single-commit.script2
-rwxr-xr-xtests/svn-single-commit.setup2
-rwxr-xr-xtests/tar-single-commit.script2
-rwxr-xr-xtests/tar-single-commit.setup2
30 files changed, 350 insertions, 21 deletions
diff --git a/tests/bzr-single-commit.script b/tests/bzr-single-commit.script
index 9b38552..7de3d0a 100755
--- a/tests/bzr-single-commit.script
+++ b/tests/bzr-single-commit.script
@@ -2,7 +2,7 @@
#
# Tests converting a simple bzr repository to git.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/bzr-single-commit.setup b/tests/bzr-single-commit.setup
index 1e966c8..dcd70cf 100755
--- a/tests/bzr-single-commit.setup
+++ b/tests/bzr-single-commit.setup
@@ -2,7 +2,7 @@
#
# Creates a bzr repository with a single file and a single commit.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/cvs-single-commit.script b/tests/cvs-single-commit.script
index 4ce2587..56dd280 100755
--- a/tests/cvs-single-commit.script
+++ b/tests/cvs-single-commit.script
@@ -2,7 +2,7 @@
#
# Tests converting a simple CVS repository to git.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/cvs-single-commit.setup b/tests/cvs-single-commit.setup
index 537de81..0fb4d3a 100755
--- a/tests/cvs-single-commit.setup
+++ b/tests/cvs-single-commit.setup
@@ -2,7 +2,7 @@
#
# Creates a CVS repository with a single file and a single commit.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/git-backup-on-error.script b/tests/git-backup-on-error-multiple-backups.script
index fbb3368..bcc165b 100755
--- a/tests/git-backup-on-error.script
+++ b/tests/git-backup-on-error-multiple-backups.script
@@ -2,7 +2,7 @@
#
# Tests when a git mirror fails that it keeps the backups around
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -30,6 +30,7 @@ normalize() {
DATETIMESPEC='[0-9]*-[0-9]*-[0-9]*-[0-9]*:[0-9]*:[0-9]*'
sed -r -e "s|git-pre-update-$DATETIMESPEC|git-pre-update-DATETIME|g" \
-e "s|git-post-fail-$DATETIMESPEC|git-post-fail-DATETIME|g" \
+ -e "s/pack-[0-9a-z]+\.(idx|pack)$/pack-file/" \
-e '/hooks\/.*\.sample/d' \
-e "s|$DATADIR|DATADIR|g" "$@"
}
@@ -41,8 +42,8 @@ normalize() {
# make upstream disappear to cause errors
rm -rf "$repo"
if "${SRCDIR}/test-lorry" --pull-only --log="$logfile" --working-area="$workdir" \
- "$DATADIR/git-backup-test-repo.lorry" --bundle=never 2>/dev/null | \
- normalize
+ "$DATADIR/git-backup-test-repo.lorry" --bundle=never 2>/dev/null \
+ --keep-multiple-backups | normalize
then
echo Previous lorry command should have failed >&2
exit 1
diff --git a/tests/git-backup-on-error.setup b/tests/git-backup-on-error-multiple-backups.setup
index 03a8dad..692223a 100755
--- a/tests/git-backup-on-error.setup
+++ b/tests/git-backup-on-error-multiple-backups.setup
@@ -2,7 +2,7 @@
#
# Creates a git repository with a single file and a single commit.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/git-backup-on-error.stderr b/tests/git-backup-on-error-multiple-backups.stderr
index e69de29..e69de29 100644
--- a/tests/git-backup-on-error.stderr
+++ b/tests/git-backup-on-error-multiple-backups.stderr
diff --git a/tests/git-backup-on-error.stdout b/tests/git-backup-on-error-multiple-backups.stdout
index b284701..d918599 100644
--- a/tests/git-backup-on-error.stdout
+++ b/tests/git-backup-on-error-multiple-backups.stdout
@@ -12,6 +12,11 @@ DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/info
DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/info/exclude
DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/info/refs
DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/objects
+DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/objects/info
+DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/objects/info/packs
+DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/objects/pack
+DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/objects/pack/pack-file
DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/packed-refs
DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/refs
DATADIR/work-dir/git-backup-test-repo/git-post-fail-DATETIME/refs/heads
@@ -27,6 +32,11 @@ DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/info
DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/info/exclude
DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/info/refs
DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/objects
+DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/objects/info
+DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/objects/info/packs
+DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/objects/pack
+DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/objects/pack/pack-file
DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/packed-refs
DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/refs
DATADIR/work-dir/git-backup-test-repo/git-pre-update-DATETIME/refs/heads
@@ -41,6 +51,11 @@ DATADIR/work-dir/git-backup-test-repo/git/info
DATADIR/work-dir/git-backup-test-repo/git/info/exclude
DATADIR/work-dir/git-backup-test-repo/git/info/refs
DATADIR/work-dir/git-backup-test-repo/git/objects
+DATADIR/work-dir/git-backup-test-repo/git/objects/info
+DATADIR/work-dir/git-backup-test-repo/git/objects/info/packs
+DATADIR/work-dir/git-backup-test-repo/git/objects/pack
+DATADIR/work-dir/git-backup-test-repo/git/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git/objects/pack/pack-file
DATADIR/work-dir/git-backup-test-repo/git/packed-refs
DATADIR/work-dir/git-backup-test-repo/git/refs
DATADIR/work-dir/git-backup-test-repo/git/refs/heads
diff --git a/tests/git-backup-on-error-multiple-backups.teardown b/tests/git-backup-on-error-multiple-backups.teardown
new file mode 100755
index 0000000..7627f88
--- /dev/null
+++ b/tests/git-backup-on-error-multiple-backups.teardown
@@ -0,0 +1,21 @@
+#!/bin/bash
+#
+# Tests when a git mirror fails that it keeps the backups around
+#
+# Copyright (C) 2013 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+rm -r "$DATADIR/git-backup-test-repo.log" "$DATADIR/work-dir"
diff --git a/tests/git-backup-on-error-single-backup-is-removed-if-exists.script b/tests/git-backup-on-error-single-backup-is-removed-if-exists.script
new file mode 100755
index 0000000..61e1535
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup-is-removed-if-exists.script
@@ -0,0 +1,43 @@
+#!/bin/bash
+#
+# Tests when a git mirror fails that it keeps the backups around
+#
+# Copyright (C) 2013 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+set -e
+set -o pipefail
+
+repo_name="git-backup-test-repo"
+logfile="$DATADIR/$repo_name.log"
+workdir="$DATADIR/work-dir"
+repo="$DATADIR/$repo_name"
+prebackup="$workdir/$repo_name/git-pre-update"
+postbackup="$workdir/$repo_name/git-post-fail"
+
+# create backup dirs
+#(lorry must not fail to make a new backup if backup dirs already exist)
+mkdir -p "$prebackup" "$postbackup"
+
+# mirror some history
+"${SRCDIR}/test-lorry" --pull-only --log="$logfile" --working-area="$workdir" --bundle=never \
+ "$DATADIR/git-backup-test-repo.lorry"
+
+if [ -e "$prebackup" ] || [ -e "$postbackup" ]
+then
+ echo "Lorry should remove existing backup directories" >&2
+ exit 1
+fi
diff --git a/tests/git-backup-on-error-single-backup-is-removed-if-exists.setup b/tests/git-backup-on-error-single-backup-is-removed-if-exists.setup
new file mode 100755
index 0000000..fa312c3
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup-is-removed-if-exists.setup
@@ -0,0 +1,47 @@
+#!/bin/sh
+#
+# Creates a git repository with a single file and a single commit.
+#
+# Copyright (C) 2013 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+set -e
+
+# create the repository
+repo="$DATADIR/git-backup-test-repo"
+mkdir "$repo"
+cd "$repo"
+git init --quiet
+
+# add the test file
+echo "first line" > test.txt
+git add test.txt
+
+# make a commit
+git commit --quiet -m "first commit"
+
+# create the .lorry file for the repository
+cat <<EOF > $DATADIR/git-backup-test-repo.lorry
+{
+ "git-backup-test-repo": {
+ "type": "git",
+ "url": "file://$repo"
+ }
+}
+EOF
+
+# create the working directory
+test -d "$DATADIR/work-dir" || mkdir "$DATADIR/work-dir"
diff --git a/tests/git-backup-on-error-single-backup-is-removed-if-exists.teardown b/tests/git-backup-on-error-single-backup-is-removed-if-exists.teardown
new file mode 100755
index 0000000..7627f88
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup-is-removed-if-exists.teardown
@@ -0,0 +1,21 @@
+#!/bin/bash
+#
+# Tests when a git mirror fails that it keeps the backups around
+#
+# Copyright (C) 2013 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+rm -r "$DATADIR/git-backup-test-repo.log" "$DATADIR/work-dir"
diff --git a/tests/git-backup-on-error-single-backup.script b/tests/git-backup-on-error-single-backup.script
new file mode 100755
index 0000000..23d0f36
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup.script
@@ -0,0 +1,51 @@
+#!/bin/bash
+#
+# Tests when a git mirror fails that it keeps the backups around
+#
+# Copyright (C) 2013 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+set -e
+set -o pipefail
+
+repo_name="git-backup-test-repo"
+logfile="$DATADIR/$repo_name.log"
+workdir="$DATADIR/work-dir"
+repo="$DATADIR/$repo_name"
+prebackup="$workdir/$repo_name/git-pre-update"
+postbackup="$workdir/$repo_name/git-post-fail"
+
+normalize() {
+ sed -r -e '/hooks\/.*\.sample/d' \
+ -e "s/pack-[0-9a-z]+\.(idx|pack)$/pack-file/" \
+ -e "s|$DATADIR|DATADIR|g" "$@"
+}
+
+# mirror some history
+"${SRCDIR}/test-lorry" --pull-only --log="$logfile" --working-area="$workdir" --bundle=never \
+ "$DATADIR/git-backup-test-repo.lorry" | normalize
+
+# make upstream disappear to cause errors
+rm -rf "$repo"
+if "${SRCDIR}/test-lorry" --pull-only --log="$logfile" --working-area="$workdir" \
+ "$DATADIR/git-backup-test-repo.lorry" --bundle=never 2>/dev/null \
+ | normalize
+then
+ echo Previous lorry command should have failed >&2
+ exit 1
+else
+ find "$workdir/git-backup-test-repo" | LC_ALL=C sort | normalize
+fi
diff --git a/tests/git-backup-on-error-single-backup.setup b/tests/git-backup-on-error-single-backup.setup
new file mode 100755
index 0000000..fa312c3
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup.setup
@@ -0,0 +1,47 @@
+#!/bin/sh
+#
+# Creates a git repository with a single file and a single commit.
+#
+# Copyright (C) 2013 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+set -e
+
+# create the repository
+repo="$DATADIR/git-backup-test-repo"
+mkdir "$repo"
+cd "$repo"
+git init --quiet
+
+# add the test file
+echo "first line" > test.txt
+git add test.txt
+
+# make a commit
+git commit --quiet -m "first commit"
+
+# create the .lorry file for the repository
+cat <<EOF > $DATADIR/git-backup-test-repo.lorry
+{
+ "git-backup-test-repo": {
+ "type": "git",
+ "url": "file://$repo"
+ }
+}
+EOF
+
+# create the working directory
+test -d "$DATADIR/work-dir" || mkdir "$DATADIR/work-dir"
diff --git a/tests/git-backup-on-error-single-backup.stderr b/tests/git-backup-on-error-single-backup.stderr
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup.stderr
diff --git a/tests/git-backup-on-error-single-backup.stdout b/tests/git-backup-on-error-single-backup.stdout
new file mode 100644
index 0000000..db622ef
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup.stdout
@@ -0,0 +1,62 @@
+Mirror of git-backup-test-repo failed, state before mirror is saved at DATADIR/work-dir/git-backup-test-repo/git-pre-update and state after mirror is saved at DATADIR/work-dir/git-backup-test-repo/git-post-fail
+DATADIR/work-dir/git-backup-test-repo
+DATADIR/work-dir/git-backup-test-repo/git
+DATADIR/work-dir/git-backup-test-repo/git-post-fail
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/FETCH_HEAD
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/HEAD
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/branches
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/config
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/description
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/hooks
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/info
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/info/exclude
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/info/refs
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/objects
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/objects/info
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/objects/info/packs
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/objects/pack
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/packed-refs
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/refs
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/refs/heads
+DATADIR/work-dir/git-backup-test-repo/git-post-fail/refs/tags
+DATADIR/work-dir/git-backup-test-repo/git-pre-update
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/FETCH_HEAD
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/HEAD
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/branches
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/config
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/description
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/hooks
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/info
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/info/exclude
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/info/refs
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/objects
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/objects/info
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/objects/info/packs
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/objects/pack
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/packed-refs
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/refs
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/refs/heads
+DATADIR/work-dir/git-backup-test-repo/git-pre-update/refs/tags
+DATADIR/work-dir/git-backup-test-repo/git/FETCH_HEAD
+DATADIR/work-dir/git-backup-test-repo/git/HEAD
+DATADIR/work-dir/git-backup-test-repo/git/branches
+DATADIR/work-dir/git-backup-test-repo/git/config
+DATADIR/work-dir/git-backup-test-repo/git/description
+DATADIR/work-dir/git-backup-test-repo/git/hooks
+DATADIR/work-dir/git-backup-test-repo/git/info
+DATADIR/work-dir/git-backup-test-repo/git/info/exclude
+DATADIR/work-dir/git-backup-test-repo/git/info/refs
+DATADIR/work-dir/git-backup-test-repo/git/objects
+DATADIR/work-dir/git-backup-test-repo/git/objects/info
+DATADIR/work-dir/git-backup-test-repo/git/objects/info/packs
+DATADIR/work-dir/git-backup-test-repo/git/objects/pack
+DATADIR/work-dir/git-backup-test-repo/git/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git/objects/pack/pack-file
+DATADIR/work-dir/git-backup-test-repo/git/packed-refs
+DATADIR/work-dir/git-backup-test-repo/git/refs
+DATADIR/work-dir/git-backup-test-repo/git/refs/heads
+DATADIR/work-dir/git-backup-test-repo/git/refs/tags
diff --git a/tests/git-backup-on-error-single-backup.teardown b/tests/git-backup-on-error-single-backup.teardown
new file mode 100755
index 0000000..7627f88
--- /dev/null
+++ b/tests/git-backup-on-error-single-backup.teardown
@@ -0,0 +1,21 @@
+#!/bin/bash
+#
+# Tests when a git mirror fails that it keeps the backups around
+#
+# Copyright (C) 2013 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+rm -r "$DATADIR/git-backup-test-repo.log" "$DATADIR/work-dir"
diff --git a/tests/git-single-commit.script b/tests/git-single-commit.script
index 7a980b2..87a66a7 100755
--- a/tests/git-single-commit.script
+++ b/tests/git-single-commit.script
@@ -2,7 +2,7 @@
#
# Tests converting a simple git repository to git.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/git-single-commit.setup b/tests/git-single-commit.setup
index f93884d..e2bb255 100755
--- a/tests/git-single-commit.setup
+++ b/tests/git-single-commit.setup
@@ -2,7 +2,7 @@
#
# Creates a git repository with a single file and a single commit.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/hg-single-commit.script b/tests/hg-single-commit.script
index e9814b9..1ce3919 100755
--- a/tests/hg-single-commit.script
+++ b/tests/hg-single-commit.script
@@ -2,7 +2,7 @@
#
# Tests converting a simple hg repository to hg.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/hg-single-commit.setup b/tests/hg-single-commit.setup
index a50284f..eb8ce7f 100755
--- a/tests/hg-single-commit.setup
+++ b/tests/hg-single-commit.setup
@@ -2,7 +2,7 @@
#
# Creates a hg repository with a single file and a single commit.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/make-tarball.script b/tests/make-tarball.script
index 95eacaa..7a25e01 100755
--- a/tests/make-tarball.script
+++ b/tests/make-tarball.script
@@ -2,7 +2,7 @@
#
# Test that we can create a tarball of the git trees.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/make-tarball.setup b/tests/make-tarball.setup
index 2032610..76f751c 100755
--- a/tests/make-tarball.setup
+++ b/tests/make-tarball.setup
@@ -2,7 +2,7 @@
#
# Creates gzip/bzip2/lzma tarballs, each with a single file.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/no-pushspec-pushall.script b/tests/no-pushspec-pushall.script
index a649122..a1956ce 100755
--- a/tests/no-pushspec-pushall.script
+++ b/tests/no-pushspec-pushall.script
@@ -2,7 +2,7 @@
#
# Tests that all refs are pushed if no push-refspecs are given
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/pushspecs-only.script b/tests/pushspecs-only.script
index 80aa8de..989a936 100755
--- a/tests/pushspecs-only.script
+++ b/tests/pushspecs-only.script
@@ -2,7 +2,7 @@
#
# Tests that only the specified refs are pushed
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/setup_once b/tests/setup_once
index ec039b7..d2605ad 100755
--- a/tests/setup_once
+++ b/tests/setup_once
@@ -2,7 +2,7 @@
#
# Create an upstream git repository with multiple branches and tags
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/svn-single-commit.script b/tests/svn-single-commit.script
index 32a9cca..89da06d 100755
--- a/tests/svn-single-commit.script
+++ b/tests/svn-single-commit.script
@@ -2,7 +2,7 @@
#
# Tests converting a simple SVN repository to git.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/svn-single-commit.setup b/tests/svn-single-commit.setup
index 182f0e5..00c1838 100755
--- a/tests/svn-single-commit.setup
+++ b/tests/svn-single-commit.setup
@@ -2,7 +2,7 @@
#
# Creates an SVN repository with a single file and a single commit.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/tar-single-commit.script b/tests/tar-single-commit.script
index 1562446..098a1a5 100755
--- a/tests/tar-single-commit.script
+++ b/tests/tar-single-commit.script
@@ -2,7 +2,7 @@
#
# Tests converting tarballs into to git repositories.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/tests/tar-single-commit.setup b/tests/tar-single-commit.setup
index bfc99f8..d520a94 100755
--- a/tests/tar-single-commit.setup
+++ b/tests/tar-single-commit.setup
@@ -2,7 +2,7 @@
#
# Creates gzip/bzip2/lzma tarballs, each with a single file.
#
-# Copyright (C) 2012 Codethink Limited
+# Copyright (C) 2013 Codethink Limited
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by