chiark / gitweb /
test suite: gitworktree: Add some more operations
[dgit.git] / tests / tests / overwrite-chkclog
1 #!/bin/bash
2 set -e
3 . tests/lib
4
5 t-setup-import examplegit
6
7 cd example
8
9 suite=stable
10
11 t-commit 'No changes, just send to stable' '' stable
12
13 t-dgit -wgf build
14
15 t-expect-fail 'Perhaps debian/changelog does not mention' \
16 t-dgit push --overwrite stable
17
18 t-dgit setup-mergechangelogs
19
20 t-expect-fail 'fix conflicts and then commit the result' \
21 git merge dgit/dgit/stable
22
23 git checkout master which
24 EDITOR=: git commit
25
26 perl -i~ -pe 's/^(\w+ \(\S+\)) stable/$1 UNRELEASED/ if $.>1' debian/changelog
27 git add debian/changelog
28 git commit -m 'UNRELEASED changelog'
29
30 t-dgit -wgf build
31
32 t-expect-fail E:'Distribution.*is UNRELEASED' \
33 t-dgit push --overwrite stable
34
35 git revert --no-edit 'HEAD^{/UNRELEASED changelog}'
36
37 t-dgit -wgf build
38
39 perl -i~ -pe 's/^(\w+ \(\S+)(\) stable)/$1+X$2/ if $.>1' debian/changelog
40 git add debian/changelog
41 git commit -m 'Break changelog'
42
43 t-expect-fail 'Perhaps debian/changelog does not mention' \
44 t-dgit push --overwrite stable
45
46 git revert --no-edit 'HEAD^{/Break changelog}'
47
48 t-dgit push --overwrite stable
49
50 t-ok