rc=$1
cat <<END >&2
TEST FAILED
+cwd: $PWD
funcs: ${FUNCNAME[*]}
lines: ${BASH_LINENO[*]}
files: ${BASH_SOURCE[*]}
: ${DGIT_TEST_DEBUG=-D}
export DGIT_TEST_DEBUG
+: ${DGIT_TEST_DISTRO+ ${distro=${DGIT_TEST_DISTRO}}}
+
export GIT_COMMITTER_DATE='1440253867 +0100'
export GIT_AUTHOR_DATE='1440253867 +0100'
root=`pwd`
troot=$root/tests
testname="${DGIT_TEST_TESTNAME-${0##*/}}"
+export DGIT_TEST_TROOT=$troot
tmp=$ADTTMP
if [ x"$tmp" = x ]; then
t-set-using-tmp
+test -f $tmp/.save-env || \
env -0 >$tmp/.save-env
ln -f $troot/ssh ssh
}
t-git-fsck () {
+ local fsckerrs=$(git rev-parse --git-dir)/dgit-test-fsck.errs
+
set +e
LC_MESSAGES=C git fsck --no-dangling --strict 2>&1 \
- | tee dgit-test-fsck.errs
+ | tee $fsckerrs
ps="${PIPESTATUS[*]}"
set -e
pats+=(-e 'notice: No default references')
set +e
- grep -v "${pats[@]}" dgit-test-fsck.errs
+ grep -v "${pats[@]}" $fsckerrs
rc=$?
set -e
case $rc in
(
shopt -s nullglob
for d in $tmp/*/.git $tmp/git/*.git; do
- cd "$d"
+ cd "${d%/.git}"
t-git-fsck
done
)
}
t-ok () {
+ : '========================================'
t-fscks
echo ok.
}
t-dgit () {
local dgit=${DGIT_TEST-dgit}
- pwd
+ pwd >&2
: '
{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{'
$dgit --dgit=$dgit --dget:-u --dput:--config=$tmp/dput.cf \
${dgit_config_debian_alias-"--config-lookup-explode=dgit-distro.debian.alias-canon"} \
- ${distro--dtest-dummy} ${distro+${distro:+-d}${distro}} \
+ ${distro+${distro:+-d}}${distro--dtest-dummy} \
$DGIT_TEST_OPTS $DGIT_TEST_DEBUG \
- -k39B13D8A $t_dgit_xopts "$@"
+ -kBCD22CD83243B79D3DFAC33EA3DBCBC039B13D8A $t_dgit_xopts "$@"
: '}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
'
}
+t-dgit-manpage () {
+ local section=$1
+ local page=$2
+ (export LC_ALL=C.UTF-8
+ if [ "$DGIT_TEST_INTREE" ]; then
+ make -C $DGIT_TEST_INTREE $page.$section.view
+ else
+ man $section $page
+ fi)
+}
+
t-diff-nogit () {
diff --exclude=.git --exclude=.pc -ruN $*
}
if [ x$mbase = x$master ]; then fail "failed to ff master"; fi
}
+t-push-was-source-only () {
+ local f
+ t-files-notexist $tmp/incoming/${p}_${v}_*.deb \
+ $tmp/incoming/${p}_${v}_*.udeb
+ # we permit _source.buildinfo files; see test_changes_source_only()
+ for f in $tmp/incoming/${p}_${v}_*.buildinfo; do
+ if [ -e $f ]; then
+ case "$f" in
+ *_source.buildinfo) ;;
+ *) fail "non-source-only file $f exists!" ;;
+ esac
+ fi
+ done
+}
+
t-pushed-good () {
local branch=$1
local suite=${2:-sid}
' <$file
}
+t-defdistro () {
+ export DGIT_TEST_DISTRO=''
+ distro=''
+ t-git-config dgit-suite.unstable.distro test-dummy
+}
+
t-stunt-envvar () {
local var=$1
local tstunt=$2
local rc
local real
set +e
- real=$(type -p "$f")
+ real=$(
+ p=":$PATH:"
+ p="${p/:"$tmp/tstunt":/:}"
+ p="${p%:}"
+ p="${p#:}"
+ PATH="$p"
+ type -p "$f"
+ )
rc=$?
set -e
}
t-drs () {
- export DGIT_TEST_TROOT=$troot
t-git-config dgit-distro.test-dummy.git-url "ext::$troot/drs-git-ext %S "
t-git-config dgit-distro.test-dummy.git-check true
t-git-config dgit-distro.test-dummy.git-create true
}
t-policy-admin () {
+ : '(((((((((((((((((((((((((((((((((((((((('
${DGIT_INFRA_PFX}dgit-repos-admin-debian --repos $tmp/git "$@"
+ : '))))))))))))))))))))))))))))))))))))))))'
}
t-policy-nonexist () {
}
t-policy-periodic () {
+ : '(((((((((((((((((((((((((((((((((((((((('
${DGIT_REPOS_SERVER_TEST-dgit-repos-server} \
test-dummy $drs_dispatch '' --cron
+ : '))))))))))))))))))))))))))))))))))))))))'
}
t-restrict () {
t-chain-test "${t#*-}"
}
+t-git-config dgit.default.old-dsc-distro test-dummy
+
case "$0" in
*/gnupg) ;;
*) t-setup-import gnupg ;;