chiark / gitweb /
test suite: Test dgit build --build=
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 26 Aug 2018 12:33:57 +0000 (13:33 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 26 Aug 2018 12:34:31 +0000 (13:34 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
debian/tests/control
tests/tests/build-modes-long [new file with mode: 0755]

index d320fb60b15cbde581b4302263393cb39652daf3..1d29b2fb4cf6f355285d1b35bd07d8b030843f52 100644 (file)
@@ -68,7 +68,7 @@ Tests: trustingpolicy-replay
 Tests-Directory: tests/tests
 Depends: dgit, dgit-infrastructure, devscripts, debhelper (>=8), fakeroot, build-essential, chiark-utils-bin, bc, faketime, dput-ng
 
-Tests: absurd-gitapply badcommit-rewrite build-modes build-modes-source checkout clone-clogsigpipe clone-gitnosuite clone-nogit debpolicy-dbretry debpolicy-newreject debpolicy-quilt-gbp defdistro-rpush defdistro-setup distropatches-reject dpkgsourceignores-correct drs-clone-nogit drs-push-masterupdate drs-push-rejects dsd-clone-nogit dsd-divert fetch-localgitonly fetch-somegit-notlast gbp-orig gitconfig gitworktree import-dsc import-maintmangle import-native import-nonnative import-tarbomb inarchivecopy mismatches-contents mismatches-dscchanges multisuite newtag-clone-nogit oldnewtagalt oldtag-clone-nogit orig-include-exclude orig-include-exclude-chkquery overwrite-chkclog overwrite-junk overwrite-splitbrains overwrite-version pbuilder protocol-compat push-buildproductsdir push-newpackage push-newrepeat push-nextdgit push-source push-source-with-changes quilt quilt-gbp quilt-gbp-build-modes quilt-singlepatch quilt-splitbrains quilt-useremail rpush sourceonlypolicy tag-updates unrepresentable version-opt
+Tests: absurd-gitapply badcommit-rewrite build-modes build-modes-long build-modes-source checkout clone-clogsigpipe clone-gitnosuite clone-nogit debpolicy-dbretry debpolicy-newreject debpolicy-quilt-gbp defdistro-rpush defdistro-setup distropatches-reject dpkgsourceignores-correct drs-clone-nogit drs-push-masterupdate drs-push-rejects dsd-clone-nogit dsd-divert fetch-localgitonly fetch-somegit-notlast gbp-orig gitconfig gitworktree import-dsc import-maintmangle import-native import-nonnative import-tarbomb inarchivecopy mismatches-contents mismatches-dscchanges multisuite newtag-clone-nogit oldnewtagalt oldtag-clone-nogit orig-include-exclude orig-include-exclude-chkquery overwrite-chkclog overwrite-junk overwrite-splitbrains overwrite-version pbuilder protocol-compat push-buildproductsdir push-newpackage push-newrepeat push-nextdgit push-source push-source-with-changes quilt quilt-gbp quilt-gbp-build-modes quilt-singlepatch quilt-splitbrains quilt-useremail rpush sourceonlypolicy tag-updates unrepresentable version-opt
 Tests-Directory: tests/tests
 Depends: dgit, dgit-infrastructure, devscripts, debhelper (>=8), fakeroot, build-essential, chiark-utils-bin, bc, faketime
 
diff --git a/tests/tests/build-modes-long b/tests/tests/build-modes-long
new file mode 100755 (executable)
index 0000000..20a2ce3
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/bash
+set -e
+. tests/lib
+. $troot/lib-build-modes
+
+bm-prep
+
+for build in                   \
+       'source'                \
+       'any'                   \
+       'all'                   \
+       'binary'                \
+       'full'                  \
+       'source,any'            \
+       'all,any'               \
+; do
+       act="build --build=$build"
+
+       case "$build" in
+       *source*|*full*)                e_source=true   ;;
+       *)                              e_source=false  ;;
+       esac
+
+       case "$build" in
+       *binary*|*any*all*|*all*any*)
+                       e_targets='build binary'                ;;
+       *any*)          e_targets='build-arch binary-arch'      ;;
+       *all*)          e_targets='build-indep binary-indep'    ;;
+       esac
+
+       cleanmodes="$cleanmodes_default"
+       real_act="$act"
+       bm-act-iterate
+done
+
+t-ok