summaryrefslogtreecommitdiff
path: root/t/t9600-cvsimport.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-11-30 22:22:54 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-11-30 22:22:54 (GMT)
commita6214fe06eefded4f71012043f35ad805e7dd19c (patch)
tree311df639cdab8a30abcab49ef540387c97bfe200 /t/t9600-cvsimport.sh
parentfdd7d48d6a09c593a68c983c450443c1e55705e6 (diff)
parent0750d751157addde94f28a7933ed4f914a526eb7 (diff)
downloadgit-a6214fe06eefded4f71012043f35ad805e7dd19c.zip
git-a6214fe06eefded4f71012043f35ad805e7dd19c.tar.gz
git-a6214fe06eefded4f71012043f35ad805e7dd19c.tar.bz2
Merge branch 'jk/maint-cvsimport-fix' into maint
* jk/maint-cvsimport-fix: cvsimport: miscellaneous packed-ref fixes cvsimport: use rev-parse to support packed refs Add basic cvsimport tests
Diffstat (limited to 't/t9600-cvsimport.sh')
-rwxr-xr-xt/t9600-cvsimport.sh101
1 files changed, 101 insertions, 0 deletions
diff --git a/t/t9600-cvsimport.sh b/t/t9600-cvsimport.sh
new file mode 100755
index 0000000..3338d44
--- /dev/null
+++ b/t/t9600-cvsimport.sh
@@ -0,0 +1,101 @@
+#!/bin/sh
+
+test_description='git-cvsimport basic tests'
+. ./test-lib.sh
+
+if ! ( type cvs && type cvsps ) >/dev/null 2>&1
+then
+ test_expect_success 'skipping cvsimport tests, cvs/cvsps not found' ''
+ test_done
+ exit
+fi
+
+CVSROOT=$(pwd)/cvsroot
+export CVSROOT
+# for clean cvsps cache
+HOME=$(pwd)
+export HOME
+
+test_expect_success 'setup cvsroot' 'cvs init'
+
+test_expect_success 'setup a cvs module' '
+
+ mkdir $CVSROOT/module &&
+ cvs co -d module-cvs module &&
+ cd module-cvs &&
+ cat <<EOF >o_fortuna &&
+O Fortuna
+velut luna
+statu variabilis,
+
+semper crescis
+aut decrescis;
+vita detestabilis
+
+nunc obdurat
+et tunc curat
+ludo mentis aciem,
+
+egestatem,
+potestatem
+dissolvit ut glaciem.
+EOF
+ cvs add o_fortuna &&
+ cat <<EOF >message &&
+add "O Fortuna" lyrics
+
+These public domain lyrics make an excellent sample text.
+EOF
+ cvs commit -F message &&
+ cd ..
+'
+
+test_expect_success 'import a trivial module' '
+
+ git cvsimport -a -z 0 -C module-git module &&
+ git diff module-cvs/o_fortuna module-git/o_fortuna
+
+'
+
+test_expect_success 'pack refs' 'cd module-git && git gc && cd ..'
+
+test_expect_success 'update cvs module' '
+
+ cd module-cvs &&
+ cat <<EOF >o_fortuna &&
+O Fortune,
+like the moon
+you are changeable,
+
+ever waxing
+and waning;
+hateful life
+
+first oppresses
+and then soothes
+as fancy takes it;
+
+poverty
+and power
+it melts them like ice.
+EOF
+ cat <<EOF >message &&
+translate to English
+
+My Latin is terrible.
+EOF
+ cvs commit -F message &&
+ cd ..
+'
+
+test_expect_success 'update git module' '
+
+ cd module-git &&
+ git cvsimport -a -z 0 module &&
+ git merge origin &&
+ cd .. &&
+ git diff module-cvs/o_fortuna module-git/o_fortuna
+
+'
+
+test_done