1#!/bin/sh
2#
3# Copyright (C) 2006 Carl D. Worth <cworth@cworth.org>
4#
56
test_description='test git-clone to cleanup after failure
78
This test covers the fact that if git-clone fails, it should remove
9the directory it created, to avoid the user having to manually
10remove the directory before attempting a clone again.'
1112
. ./test-lib.sh
1314
test_expect_failure \
15'clone of non-existent source should fail' \
16'git-clone foo bar'
1718
test_expect_failure \
19'failed clone should not leave a directory' \
20'cd bar'
2122
# Need a repo to clone
23test_create_repo foo
2425
# clone doesn't like it if there is no HEAD. Is that a bug?
26(cd foo && touch file && git add file && git commit -m 'add file' >/dev/null 2>&1)
2728
# source repository given to git-clone should be relative to the
29# current path not to the target dir
30test_expect_failure \
31'clone of non-existent (relative to $PWD) source should fail' \
32'git-clone ../foo baz'
3334
test_expect_success \
35'clone should work now that source exists' \
36'git-clone foo bar'
3738
test_expect_success \
39'successful clone must leave the directory' \
40'cd bar'
4142
test_done