X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=blobdiff_plain;f=tests%2Flib;h=adbd79ff587870bcd39e5443fd5e7f42f49258dc;hp=5e64b99cd577b58bf6ddee4e4a421773a16be3ee;hb=e494013b5146a4ac0012cea5d5b1ca41a9712529;hpb=8b67402e788511056cae31748a1ffafdabb4a9fb diff --git a/tests/lib b/tests/lib index 5e64b99c..adbd79ff 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/infra/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##*/}}" @@ -105,10 +112,10 @@ t-archive () { } t-dgit () { + local dgit=${DGIT_TEST-dgit} : ' - {{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{' - ${DGIT_TEST-dgit} --dget:-u --dput:--config=$tmp/dput.cf \ + $dgit --dgit=$dgit --dget:-u --dput:--config=$tmp/dput.cf \ -dtest-dummy $DGIT_TEST_OPTS ${DGIT_TEST_DEBUG--D} \ -k39B13D8A "$@" : '}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} @@ -116,7 +123,7 @@ t-dgit () { } t-diff-nogit () { - diff --exclude=.git -ruN $* + diff --exclude=.git --exclude=.pc -ruN $* } t-cloned-fetched-good () { @@ -256,10 +263,43 @@ t-drs () { cp $root/tests/suites $tmp/. } -t-drs-test () { +t-dss () { t-drs + t-git-config dgit-distro.test-dummy.ssh "$troot/dss-ssh" + t-git-config dgit-distro.test-dummy.git-check ssh-cmd + t-git-config dgit-distro.test-dummy.git-create true + t-git-config dgit-distro.test-dummy.git-url \ + "ext::$troot/dss-ssh X %S /dgit/test-dummy/repos" + + t-git-config dgit-distro.test-dummy.diverts.drs /drs + t-git-config dgit-distro.test-dummy/drs.ssh "$troot/ssh" + t-git-config dgit-distro.test-dummy/drs.git-url $tmp/git + t-git-config dgit-distro.test-dummy/drs.git-check ssh-cmd + t-git-config dgit-distro.test-dummy/drs.git-create ssh-cmd + + dss_dispatch=$tmp/dispatch-dir/distro=test-dummy + mkdir -p $dss_dispatch + ln -sf $root $dss_dispatch/dgit-live + ln -sf $tmp/git $dss_dispatch/repos + ln -sf $tmp/suites $tmp/dm.txt $dss_dispatch/ + mkdir -p $dss_dispatch/keyrings + ln -sf $tmp/dd.gpg $dss_dispatch/keyrings/debian-keyring.gpg + ln -sf $tmp/dm.gpg $dss_dispatch/keyrings/debian-maintainers.gpg + + echo 'no-such-package* drs' >$dss_dispatch/diverts +} + +t-chain-test () { + local ct=$1 + local d=${0%/*} cd $root export DGIT_TEST_TESTNAME="$testname" export ADTTMP=$tmp - exec "${0///drs-//}" "$@" + exec "$d/$ct" +} + +t-alt-test () { + local t=${0##*/} + t-${t%%-*} + t-chain-test "${t#*-}" }