summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2010-08-16 16:25:01 (GMT)
committerJunio C Hamano <gitster@pobox.com>2010-08-18 19:43:24 (GMT)
commit9b777a165e050f9a881a74a5902a8ddd2de30da5 (patch)
tree37583b97574c2237448fff018cbf63be6c3b9d1b
parent06eaaa783c9ba36ac45143eaa3b707f804d377a4 (diff)
downloadgit-9b777a165e050f9a881a74a5902a8ddd2de30da5.zip
git-9b777a165e050f9a881a74a5902a8ddd2de30da5.tar.gz
git-9b777a165e050f9a881a74a5902a8ddd2de30da5.tar.bz2
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 d9c67f5..c7baefb 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 648d161..b51d2e1 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 71178e2..827d39f 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 89da4ae..e1db323 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 958bdce..93c4fa8 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' '