--- /dev/null
+#!/bin/bash
+set -e
+. tests/lib
+
+arch=$(dpkg-architecture -qDEB_BUILD_ARCH)
+
+t-tstunt-parsechangelog
+
+t-prep-newpackage example 1.0
+
+cd $p
+
+t-refs-same-start
+t-ref-head
+
+# (1) try pushing a changes file containing binaries
+
+t-dgit --dpkg-buildpackage:-d build -F
+
+t-expect-push-fail 'user-specified changes file is not source-only' \
+t-dgit -C ../${p}_1.0_${arch}.changes push-source --new
+
+# (2) try pushing a source-only changes file
+
+t-dgit --dpkg-buildpackage:-d build-source
+t-dgit -C ../${p}_1.0_source.changes push-source --new
+
+t-pushed-good master
+t-push-was-source-only
+
+t-ok