path: root/tests
diff options
authorSean Whitton <>2019-07-19 17:11:22 +0100
committerIan Jackson <>2019-07-20 17:12:05 +0100
commit45c18da882a7bb95c35973223a01deca171bfb69 (patch)
tree0ef56be5feaf4f1b1d5e67e0f5885b49fbcdb571 /tests
parentc01951dd94161b9e9c2b602b1e308ee4354c9520 (diff)
git-debpush: Support forcing individual checks
While using git-debpush interactively, if the user sees that checks have failed which they know to be safe to override, they typically just use --force or -f. However, it is useful for scripts to be able to skip single checks, and if the user knows that a check will fail in advance of running git-debpush, it is convenient to be able to specify that but still see whether other checks fail, where those failures were unexpected. This can avoid the user having to run git-debpush more than once. The list of any checks which failed but were overridden is not stored in the generated tag. git-debpush's checks are for the convenience of the local user only, and the list of failed but overridden checks is not considered to be metadata for the upload. Not recording failed but overridden checks in the git tag keeps git-debpush's checking independent of its wrapping of git-tag and git-push, which makes git-debpush simpler and easier to understand. The complexity is on the server side, in tag2upload. git-debpush(1): We want the list of checks that can be overridden to be at the bottom of the list of options because most users will not need to look at it. We also want the description of --force|-f to be adjacent to the description of --force=<check>. So move the description of --force|-f to the end of the list of options. Signed-off-by: Sean Whitton <> Closes: #932459
Diffstat (limited to 'tests')
1 files changed, 7 insertions, 1 deletions
diff --git a/tests/tests/tagupl b/tests/tests/tagupl
index e11ea5a..09ca53a 100755
--- a/tests/tests/tagupl
+++ b/tests/tests/tagupl
@@ -29,7 +29,13 @@ tagname=test-dummy/$v
t-expect-fail "upstream tag $upstreamtag is not an ancestor of refs/heads/master" \
t-tagupl-test --quilt=gbp --upstream=$upstreamtag
-t-tagupl-test --quilt=gbp --force --upstream=$upstreamtag
+t-expect-fail "upstream tag $upstreamtag is not an ancestor of refs/heads/master" \
+t-tagupl-test --quilt=gbp --force=suite --force=no-such-force-option --upstream=$upstreamtag
+t-tagupl-test --quilt=gbp --force=suite --force=no-such-force-option-1 \
+ --force=upstream-nonancestor,no-such-force-option-2 \
+ --upstream=$upstreamtag
t-pushed-good master
# todo: test each miss/rejection