From: Ian Jackson Date: Sun, 19 Apr 2015 21:51:33 +0000 (+0100) Subject: Test suite: start work on test of policy machinery X-Git-Tag: debian/0.30~220 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=commitdiff_plain;h=8c6bf5e74ef133792ac87ccfa2a57041b7dbfe49 Test suite: start work on test of policy machinery --- diff --git a/tests/lib b/tests/lib index 7a5ede52..cb5c6498 100644 --- a/tests/lib +++ b/tests/lib @@ -7,6 +7,7 @@ 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} + : ${DGIT_INFRA_PFX:=$DGIT_TEST_INTREE${DGIT_TEST_INTREE:+/infra/}} export DGIT_TEST DGIT_REPOS_SERVER_TEST DGIT_SSH_DISPATCH_TEST fi @@ -353,6 +354,20 @@ t-dsd () { echo 'no-such-package* drs' >$dsd_dispatch/diverts } +t-policy-admin () { + ${DGIT_INFRA_PFX}dgit-repos-admin-debian --repos $tmp/git "$@" +} + +t-debpolicy () { + t-dsd + + ln -sf ${DGIT_INFRA_PFX}dgit-repos-policy-debian \ + $dsd_dispatch/policy-hook + + mkdir $tmp/git + t-policy-admin create-db +} + t-chain-test () { local ct=$1 local d=${0%/*} diff --git a/tests/tests/debpolicy-newreject b/tests/tests/debpolicy-newreject new file mode 100755 index 00000000..de01a53b --- /dev/null +++ b/tests/tests/debpolicy-newreject @@ -0,0 +1,24 @@ +#!/bin/bash +set -e +. tests/lib + +export DGIT_DRS_DEBUG=1 + +t-debpolicy +t-prep-newpackage pari-extra 3.1 + +cd $p + + +echo FORBIDDEN >debian/some-file +git add debian/some-file +git commit -m 'Commit a forbidden thing' + +bad=`git rev-parse HEAD:debian/some-file` +t-policy-admin taint --global "$bad" "forbidden for testing" + +t-dgit build +t-expect-fail 'forbidden for testing' \ +t-dgit push --new + +echo xxx up to here