summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2023-09-02 10:50:30 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2023-09-02 11:43:42 +0100
commitbc9f321baa9dd6b7c2a2437e11d0cb4c1b7b9498 (patch)
treec4d845bc09520fd7a3f4cb8f544ce2a77b6bf593 /tests
parent1af59cfc1e888cb5478997fa342afdfa6f975f6d (diff)
dgit: Prevent pushing old versions (test)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'tests')
-rwxr-xr-xtests/tests/import-pushold37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/tests/import-pushold b/tests/tests/import-pushold
new file mode 100755
index 0000000..ed73fa3
--- /dev/null
+++ b/tests/tests/import-pushold
@@ -0,0 +1,37 @@
+#!/bin/bash
+set -e
+. tests/lib
+
+t-tstunt-parsechangelog
+
+p=example
+old=1.0-1
+current=1.0-1.100
+
+t-archive $p $current
+t-git-none
+
+mkdir $p
+cd $p
+git init
+t-dgit import-dsc $troot/pkg-srcs/${p}_${old}.dsc main
+git checkout main
+
+t-dgit fetch
+
+: "attempt push of old"
+
+t-expect-fail 'trying to push an old version' \
+t-dgit push-source --deliberately-not-fast-forward --overwrite
+
+: "attempt push of current"
+
+t-dgit checkout sid
+
+t-expect-fail 'trying to push an old version' \
+t-dgit push-source --deliberately-not-fast-forward --overwrite
+
+t-dgit push-source --force-uploading-old-version
+t-pushed-good dgit/sid
+
+t-ok