exec 2>&1
set -x
+set -o pipefail
. tests/lib-core
t-expect-fail () {
local mpat="$1"; shift
+ set +o pipefail
LC_MESSAGES=C "$@" 2>&1 | tee $tmp/t.output
- test ${PIPESTATUS[0]} != 0
+ local gotstatus=${PIPESTATUS[0]}
+ set -o pipefail
+ test $gotstatus != 0
egrep "$mpat" $tmp/t.output ||false
}
t-refs-same \
refs/heads/dgit/sid \
refs/remotes/dgit/dgit/sid
- t-refs-notexist dgit/unstable remotes/dgit/dgit/unstable
+ t-refs-notexist refs/dgit/unstable refs/remotes/dgit/dgit/unstable
}
t-output () {
t-git-get-ref () {
local ref=$1
- git show-ref -d $1 | perl -ne '
+ case "$ref" in
+ refs/*) ;;
+ *) fail "t-git-get-ref bad $ref" ;;
+ esac
+ (git show-ref -d $1 || test $? = 1) | perl -ne '
$x = $1 if m#^(\w+) \Q'$1'\E(?:\^\{\})?$#;
END { print "$x\n" if length $x; }
'
t-apply-diff () {
local v1=$1
local v2=$2
- (cd $troot/pkg-srcs; debdiff ${p}_${v1}.dsc ${p}_${v2}.dsc) \
- | patch -p1 -u
+ (cd $troot/pkg-srcs;
+ debdiff ${p}_${v1}.dsc ${p}_${v2}.dsc || test $? = 1) \
+ | patch -p1 -u
+}
+
+t-commit () {
+ local msg=$1
+ v=1.$revision
+ dch -v$v --distribution unstable "$1"
+ git add debian/changelog
+ debcommit
+ revision=$(( $revision + 1 ))
}
t-git-config () {
${DGIT_INFRA_PFX}dgit-repos-admin-debian --repos $tmp/git "$@"
}
+t-policy () {
+ local policyhook=$1
+ ln -sf ${DGIT_INFRA_PFX}$policyhook \
+ $drs_dispatch/policy-hook
+}
+
t-debpolicy () {
t-dsd
-
- ln -sf ${DGIT_INFRA_PFX}dgit-repos-policy-debian \
- $drs_dispatch/policy-hook
+ t-policy dgit-repos-policy-debian
mkdir $tmp/git
t-policy-admin create-db