chiark / gitweb /
14d1e8e2cb004b62e50712f0a49f0ad16f6a06d7
[dgit.git] / tests / tests / gdr-unprocessable
1 #!/bin/bash
2 set -e
3 . tests/lib
4
5 t-dependencies GDR
6
7 t-tstunt-parsechangelog
8 t-setup-import gdr-convert-gbp
9
10 cd $p
11
12 t-dgit setup-mergechangelogs
13
14 subcmd () {
15         cmd=("$@")
16
17         branch merge 'complex merge'
18         branch origin 'origin commit'
19 }
20
21 branch () {
22         branch=$1
23         git checkout gdr-unprocessable/$branch
24         msgcore=$2
25         expected-$expected
26 }
27
28 cmd () {
29         t-git-debrebase "${cmd[@]}"
30 }
31
32 expected- () {
33         t-expect-fail E:"$(printf "$mfmt" "$msgcore")" \
34         cmd
35 }
36
37 expected-ok () {
38         f=../out.$branch."${cmd/[^-a-zA-Z//_}"
39         cmd | tee $f
40         for mfmt in "${mfmts[@]}"; do
41                 grep "$(printf "$mfmt" "$msgcore")" $f
42         done
43 }
44
45 mfmt='found unprocessable commit.*%s'
46 subcmd
47 subcmd quick
48 subcmd new-upstream 2.0 upstream/2.0
49 subcmd make-patches
50 subcmd breakwater
51 subcmd anchor
52
53 expected=ok
54 mfmts=(' Unprocessable (%s)')
55 subcmd analyse
56
57 mfmts=('branch not in git-debrebase form'
58         'found unprocessable commit, cannot cope: %s')
59 subcmd status
60
61 t-ok