chiark / gitweb /
tests: Test dgit-ssh-dispatch
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 8 Nov 2014 22:02:07 +0000 (22:02 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 8 Nov 2014 22:22:22 +0000 (22:22 +0000)
tests/dss-ssh [new file with mode: 0755]
tests/lib
tests/tests/dss-clone-nogit [new file with mode: 0755]
tests/tests/dss-divert [new file with mode: 0755]

diff --git a/tests/dss-ssh b/tests/dss-ssh
new file mode 100755 (executable)
index 0000000..bc179f5
--- /dev/null
@@ -0,0 +1,13 @@
+#!/bin/sh
+set -e
+
+echo >&2 '(((((((((((((((((((((((((((((((((((((((('
+set -x
+
+tmp=$DGIT_TEST_TMP
+cd /
+userhost="$1"; shift
+export SSH_ORIGINAL_COMMAND="$*"
+${DGIT_SSH_DISPATCH_TEST-dgit-ssh-dispatch} -D $tmp/dispatch-dir
+
+: '))))))))))))))))))))))))))))))))))))))))'
index 0073df4..019a998 100644 (file)
--- a/tests/lib
+++ b/tests/lib
@@ -263,6 +263,32 @@ t-drs () {
        cp $root/tests/suites $tmp/.
 }
 
+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%/*}
diff --git a/tests/tests/dss-clone-nogit b/tests/tests/dss-clone-nogit
new file mode 100755 (executable)
index 0000000..915f9d3
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/bash
+set -e
+. tests/lib
+t-alt-test
diff --git a/tests/tests/dss-divert b/tests/tests/dss-divert
new file mode 100755 (executable)
index 0000000..60ff085
--- /dev/null
@@ -0,0 +1,7 @@
+#!/bin/bash
+set -e
+. tests/lib
+t-dss
+rm $dss_dispatch/repos
+echo '* drs' >>$dss_dispatch/diverts
+t-chain-test fetch-somegit-notlast