summaryrefslogtreecommitdiff
path: root/t/t5600-clone-fail-cleanup.sh
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2006-02-17 13:33:28 -0800
committerJunio C Hamano <junkio@cox.net>2006-02-21 18:18:25 -0800
commit5508a616631fb41531b638f744bd92c701727014 (patch)
tree97faf86b45029527eaae3ea9d2999c607fa27f86 /t/t5600-clone-fail-cleanup.sh
parent00fd12392c8592911e3bb71df09bf3672f7fca04 (diff)
downloadgit-5508a616631fb41531b638f744bd92c701727014.tar.gz
New test to verify that when git-clone fails it cleans up the new directory.
Signed-off-by: Carl Worth <cworth@cworth.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 't/t5600-clone-fail-cleanup.sh')
-rwxr-xr-xt/t5600-clone-fail-cleanup.sh36
1 files changed, 36 insertions, 0 deletions
diff --git a/t/t5600-clone-fail-cleanup.sh b/t/t5600-clone-fail-cleanup.sh
new file mode 100755
index 0000000000..0c6a363be9
--- /dev/null
+++ b/t/t5600-clone-fail-cleanup.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# Copyright (C) 2006 Carl D. Worth <cworth@cworth.org>
+#
+
+test_description='test git-clone to cleanup after failure
+
+This test covers the fact that if git-clone fails, it should remove
+the directory it created, to avoid the user having to manually
+remove the directory before attempting a clone again.'
+
+. ./test-lib.sh
+
+test_expect_failure \
+ 'clone of non-existent source should fail' \
+ 'git-clone foo bar'
+
+test_expect_failure \
+ 'failed clone should not leave a directory' \
+ 'cd bar'
+
+# Need a repo to clone
+test_create_repo foo
+
+# clone doesn't like it if there is no HEAD. Is that a bug?
+(cd foo && touch file && git add file && git commit -m 'add file' >/dev/null 2>&1)
+
+test_expect_success \
+ 'clone should work now that source exists' \
+ 'git-clone foo bar'
+
+test_expect_success \
+ 'successfull clone must leave the directory' \
+ 'cd bar'
+
+test_done