5 t-tstunt-parsechangelog
7 t-git-config dgit.default.dep14tag no
10 t-policy dgit-repos-policy-trusting
11 t-prep-newpackage example 1.0
22 t-commit 'Prep v1.1 which will be rewound'
26 git checkout $tagpfx/1.0
28 t-dgit push --deliberately-fresh-repo
30 remote="`git config dgit-distro.test-dummy.git-url`/$p.git"
32 t-expect-push-fail 'Replay of previously-rewound upload' \
35 $tagpfx/1.1~0:refs/dgit/sid
40 : "More subtle replay prevention checks"
45 # We have to stop the pushes succeeding because if they work they
46 # record the tag, which prevents the replays. We are simulating
47 # abortive pushes (since we do want to avoid a situation where
48 # dangerous old signed tags can exist).
51 t-commit "request with $delib that we will replay"
53 t-expect-push-fail 'system: No such file or directory' \
56 t-policy dgit-repos-policy-trusting
63 git show $tagpfx/$replayv | grep -e $delib
64 t-expect-push-fail "$mpat" \
67 +$tagpfx/$replayv~0:refs/dgit/sid
70 prepare-replay --deliberately-fresh-repo
72 # simulate some other thing that we shouldn't delete
73 git push $dgitrepo +master:refs/heads/for-testing
75 attempt-replay 'does not declare previously heads/for-testing'
77 prepare-replay --deliberately-not-fast-forward
79 t-commit 'later version to stop not fast forward rewinding'
83 attempt-replay "does not declare previously tags/$tagpfx/$v"