set -e
. tests/lib
+# `dgit build-source` cleans before applying patches. However, the
+# clean targets of 3.0 (quilt) packages are allowed to assume that
+# patches are applied. If they are not, the clean targets can
+# misbehave in basically two ways:
+#
+# - fail to clean everything
+# - error out and stop the build
+#
+# In this test, what we want to see is whether dgit detects that quilt
+# fixup cannot be linear because the user has failed to pass --gbp.
+# So we need to ensure the package's clean target does not error out,
+# because that blocks dgit attempting quilt linearisation. This
+# environment variable tells the example package's clean target not to
+# error out if it notices that patches have not yet been applied.
+export DGIT_TEST_TOLERATE_UNPATCHED_CLEAN=true
+
t-tstunt-parsechangelog
t-gbp-example-prep
t-expect-fail 'quilt fixup cannot be linear' \
t-dgit build-source
-t-git-config dgit-distro.test-dummy.dgit-tag-format new
-t-expect-fail 'requires split view so server needs to support' \
-t-dgit -wgf --quilt=gbp build-source
-t-newtag
-
t-dgit --quilt=gbp --dgit-view-save=split.b1 build-source
git rev-parse split.b1