X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=tests%2Flib;h=0073df4123e56ea48014c11e73be87184c42b057;hb=2711b56a97437d8260ccac48b0699a8bfe9764a1;hp=fb6b2fc068273ab2989250637a80eb58846d1407;hpb=62c2e5bde449901e1963adb288b4c31b46db3776;p=dgit.git diff --git a/tests/lib b/tests/lib index fb6b2fc0..0073df41 100644 --- a/tests/lib +++ b/tests/lib @@ -3,6 +3,13 @@ exec 2>&1 set -x +if [ "x$DGIT_TEST_INTREE" != x ]; then + : ${DGIT_TEST:=$DGIT_TEST_INTREE/dgit} + : ${DGIT_REPOS_SERVER_TEST:=$DGIT_TEST_INTREE/dgit-repos-server} + : ${DGIT_SSH_DISPATCH_TEST:=$DGIT_TEST_INTREE/infra/dgit-ssh-dispatch} + export DGIT_TEST DGIT_REPOS_SERVER_TEST DGIT_SSH_DISPATCH_TEST +fi + root=`pwd` troot=$root/tests testname="${DGIT_TEST_TESTNAME-${0##*/}}" @@ -39,9 +46,19 @@ fail () { exit 1 } +t-untar () { + local tarfile=$1.tar + local edittree=$1.edit + if test -d "$edittree"; then + cp -al "$edittree"/* . + else + tar xf "$tarfile" + fi +} + t-worktree () { rm -rf $p - tar xf $troot/worktrees/${p}_$1.tar + t-untar $troot/worktrees/${p}_$1 } t-git () { @@ -49,11 +66,7 @@ t-git () { v=$2 mkdir -p $tmp/git local gs=$troot/git-srcs/${p}_$v.git - if test -f $gs.edit; then - cp -al $gs.edit $tmp/git/${p}.git - else - (set -e; cd $tmp/git; tar xf $gs.tar) - fi + (set -e; cd $tmp/git; t-untar $gs) } t-git-none () { @@ -76,30 +89,41 @@ t-archive-none () { echo sid >$tmp/aq/suite.unstable } +t-archive-process-incoming () { + mv incoming/${p}_${v}[._]* mirror/ + t-archive-query +} + +t-archive-query () { + local dscf=${p}_${v}.dsc + echo "${v} $dscf" >>$tmp/aq/package.sid.${p} +} + t-archive () { t-archive-none $1 v=$2 local dscf=${p}_$2.dsc rm -f $tmp/mirror/${p}_* ln $troot/pkg-srcs/${p}_${2%-*}* $tmp/mirror/ - echo "$2 $dscf" >>$tmp/aq/package.sid.${p} + t-archive-query rm -rf $tmp/extract mkdir $tmp/extract (set -e; cd $tmp/extract; dpkg-source -x ../mirror/$dscf) } t-dgit () { + local dgit=${DGIT_TEST-dgit} : ' - {{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{' - ${DGIT_TEST-dgit} --dget:-u --dput:--config=$tmp/dput.cf \ - -dtest-dummy $DGIT_TEST_OPTS -D -k39B13D8A "$@" + $dgit --dgit=$dgit --dget:-u --dput:--config=$tmp/dput.cf \ + -dtest-dummy $DGIT_TEST_OPTS ${DGIT_TEST_DEBUG--D} \ + -k39B13D8A "$@" : '}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} ' } t-diff-nogit () { - diff --exclude=.git -ruN $* + diff --exclude=.git --exclude=.pc -ruN $* } t-cloned-fetched-good () { @@ -235,14 +259,21 @@ t-drs () { t-git-config dgit-distro.test-dummy.git-url "ext::$troot/drs-git-ext %S " t-git-config dgit-distro.test-dummy.git-check true t-git-config dgit-distro.test-dummy.git-create true + cp $root/tests/gnupg/{dd.gpg,dm.gpg,dm.txt} $tmp/. + cp $root/tests/suites $tmp/. } -t-drs-test () { - t-drs +t-chain-test () { + local ct=$1 + local d=${0%/*} cd $root export DGIT_TEST_TESTNAME="$testname" export ADTTMP=$tmp - cp $root/tests/gnupg/{dd.gpg,dm.gpg,dm.txt} $tmp/. - cp $root/tests/suites $tmp/. - exec "${0///drs-//}" "$@" + exec "$d/$ct" +} + +t-alt-test () { + local t=${0##*/} + t-${t%%-*} + t-chain-test "${t#*-}" }