#!/bin/bash set -e . tests/lib t-tstunt-parsechangelog t-debpolicy t-prep-newpackage example 1.0 cd $p revision=1 t-commit () { local msg=$1 v=1.$revision dch -v$v --distribution unstable "$1" git add debian/changelog debcommit revision=$(( $revision + 1 )) } git tag start echo FORBIDDEN >debian/some-file git add debian/some-file t-commit '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 t-git-dir-check enoent git reset --hard start t-commit 'will vanish from NEW' vanished=$v t-dgit build t-dgit push --new t-git-dir-check secret t-policy-periodic t-git-dir-check secret # pretend it vanished from new: rm $tmp/incoming/* t-archive-none example t-git-dir-time-passes t-policy-periodic t-git-dir-check enoent t-commit 'should require --deliberately...questionable' t-dgit build t-expect-fail "tag debian/$vanished referred to this object.*all previously pushed versions were found to have been removed" \ t-dgit push --new t-git-dir-check enoent t-dgit push --new --deliberately-include-questionable-history t-git-dir-check secret t-policy-periodic t-git-dir-check secret t-archive-process-incoming new t-git-dir-time-passes t-policy-periodic t-git-dir-check secret oldobj=`git rev-parse HEAD` git reset --hard start t-commit 'should require --deliberately..not-ff' t-dgit build t-expect-fail "HEAD is not a descendant of the archive's version" \ t-dgit push t-expect-fail "Package is in NEW and has not been accepted or rejected yet" \ t-dgit --deliberately-TEST-not-fast-forward-dgit-only push t-dgit --deliberately-not-fast-forward push cd $tmp/git/$p.git t-expect-fail "Not a valid object name" \ git cat-file -p $oldobj cd $tmp/$p echo xxx up to here echo xxx want to test database lock retry thing on push-and-taint echo xxx want to test forbidden objects not present echo xxx want to check expect fail did not push echo xxx want to check replay prevention insufficient proofs in tag echo xxx want to check replay prevention removed tags file