chiark / gitweb /
Test suite: add component "main" to synthesised mirror filenames
[dgit.git] / tests / lib
index 529f55d95a77cc2b11663ef940f1794bb63fc23b..5caa4c31c49d87c76152ab4dc0ddef240e11f6f2 100644 (file)
--- a/tests/lib
+++ b/tests/lib
@@ -5,8 +5,9 @@ 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}
-       export DGIT_TEST DGIT_REPOS_SERVER_TEST
+       : ${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`
@@ -84,30 +85,30 @@ t-has-ancestor () {
 
 t-archive-none () {
        p=$1
-       mkdir -p $tmp/aq $tmp/mirror
+       mkdir -p $tmp/aq $tmp/mirror/main
        echo sid >$tmp/aq/suite.unstable
 }
 
 t-archive-process-incoming () {
-       mv incoming/${p}_${v}[._]* mirror/
+       mv incoming/${p}_${v}[._]* mirror/main/
        t-archive-query
 }
 
 t-archive-query () {
        local dscf=${p}_${v}.dsc
-       echo "${v} $dscf" >>$tmp/aq/package.sid.${p}
+       echo "${v} main/$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/
+       rm -f $tmp/mirror/main/${p}_*
+       ln $troot/pkg-srcs/${p}_${2%-*}* $tmp/mirror/main/
        t-archive-query
        rm -rf $tmp/extract
        mkdir $tmp/extract
-       (set -e; cd $tmp/extract; dpkg-source -x ../mirror/$dscf)
+       (set -e; cd $tmp/extract; dpkg-source -x ../mirror/main/$dscf)
 }
 
 t-dgit () {
@@ -262,12 +263,44 @@ t-drs () {
        cp $root/tests/suites $tmp/.
 }
 
-t-alt-test () {
+t-dsd () {
+       t-drs
+ t-git-config dgit-distro.test-dummy.ssh "$troot/dsd-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/dsd-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
+
+       dsd_dispatch=$tmp/dispatch-dir/distro=test-dummy
+       mkdir -p $dsd_dispatch
+       ln -sf $root $dsd_dispatch/dgit-live
+       ln -sf $tmp/git $dsd_dispatch/repos
+       ln -sf $tmp/suites $tmp/dm.txt $dsd_dispatch/
+       mkdir -p $dsd_dispatch/keyrings
+       ln -sf $tmp/dd.gpg $dsd_dispatch/keyrings/debian-keyring.gpg
+       ln -sf $tmp/dm.gpg $dsd_dispatch/keyrings/debian-maintainers.gpg
+       ln -sf /bin/true $dsd_dispatch/policy-hook
+
+       echo 'no-such-package* drs' >$dsd_dispatch/diverts
+}
+
+t-chain-test () {
+       local ct=$1
        local d=${0%/*}
-       local t=${0##*/}
-       t-${t%%-*}
        cd $root
        export DGIT_TEST_TESTNAME="$testname"
        export ADTTMP=$tmp
-       exec "$d/${t#*-}"
+       exec "$d/$ct"
+}      
+
+t-alt-test () {
+       local t=${0##*/}
+       t-${t%%-*}
+       t-chain-test "${t#*-}"
 }