aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2010-08-16 09:25:01 -0700
committerJunio C Hamano <gitster@pobox.com>2010-08-18 12:43:24 -0700
commit9b777a165e050f9a881a74a5902a8ddd2de30da5 (patch)
tree37583b97574c2237448fff018cbf63be6c3b9d1b
parent06eaaa783c9ba36ac45143eaa3b707f804d377a4 (diff)
downloadgit-9b777a165e050f9a881a74a5902a8ddd2de30da5.tar.gz
git-9b777a165e050f9a881a74a5902a8ddd2de30da5.tar.xz
cvs tests: do not touch test CVS repositories shipped with source
Some tests in t96xx series (cvsimport) want to write into the control area (CVSROOT) of their test CVS repositories, but this does not work well when the source area is made read-only (test trash directories are moved via --root=else/where option). Copy the supplied test CVS repository to a scratch place at the beginning of these tests. Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--t/Makefile1
-rw-r--r--t/lib-cvs.sh6
-rwxr-xr-xt/t9601-cvsimport-vendor-branch.sh5
-rwxr-xr-xt/t9602-cvsimport-branches-tags.sh5
-rwxr-xr-xt/t9603-cvsimport-patchsets.sh3
5 files changed, 9 insertions, 11 deletions
diff --git a/t/Makefile b/t/Makefile
index d9c67f560..c7baefb7e 100644
--- a/t/Makefile
+++ b/t/Makefile
@@ -29,7 +29,6 @@ pre-clean:
clean:
$(RM) -r 'trash directory'.* test-results
- $(RM) t????/cvsroot/CVSROOT/?*
$(RM) -r valgrind/bin
$(RM) .prove
diff --git a/t/lib-cvs.sh b/t/lib-cvs.sh
index 648d1619c..b51d2e13a 100644
--- a/t/lib-cvs.sh
+++ b/t/lib-cvs.sh
@@ -30,6 +30,12 @@ case "$cvsps_version" in
;;
esac
+setup_cvs_test_repository () {
+ CVSROOT="$(pwd)/.cvsroot" &&
+ cp -r "$TEST_DIRECTORY/$1/cvsroot" "$CVSROOT" &&
+ export CVSROOT
+}
+
test_cvs_co () {
# Usage: test_cvs_co BRANCH_NAME
rm -rf module-cvs-"$1"
diff --git a/t/t9601-cvsimport-vendor-branch.sh b/t/t9601-cvsimport-vendor-branch.sh
index 71178e2e5..827d39f5b 100755
--- a/t/t9601-cvsimport-vendor-branch.sh
+++ b/t/t9601-cvsimport-vendor-branch.sh
@@ -34,10 +34,7 @@
test_description='git cvsimport handling of vendor branches'
. ./lib-cvs.sh
-test_expect_success PERL 'setup CVSROOT' '
- CVSROOT="$TEST_DIRECTORY"/t9601/cvsroot &&
- export CVSROOT
-'
+setup_cvs_test_repository t9601
test_expect_success PERL 'import a module with a vendor branch' '
diff --git a/t/t9602-cvsimport-branches-tags.sh b/t/t9602-cvsimport-branches-tags.sh
index 89da4aead..e1db323f5 100755
--- a/t/t9602-cvsimport-branches-tags.sh
+++ b/t/t9602-cvsimport-branches-tags.sh
@@ -6,10 +6,7 @@
test_description='git cvsimport handling of branches and tags'
. ./lib-cvs.sh
-test_expect_success PERL 'setup CVSROOT' '
- CVSROOT="$TEST_DIRECTORY"/t9602/cvsroot &&
- export CVSROOT
-'
+setup_cvs_test_repository t9602
test_expect_success PERL 'import module' '
diff --git a/t/t9603-cvsimport-patchsets.sh b/t/t9603-cvsimport-patchsets.sh
index 958bdce4d..93c4fa885 100755
--- a/t/t9603-cvsimport-patchsets.sh
+++ b/t/t9603-cvsimport-patchsets.sh
@@ -14,8 +14,7 @@
test_description='git cvsimport testing for correct patchset estimation'
. ./lib-cvs.sh
-CVSROOT="$TEST_DIRECTORY"/t9603/cvsroot
-export CVSROOT
+setup_cvs_test_repository t9603
test_expect_failure 'import with criss cross times on revisions' '