chiark / gitweb /
31a3797e4f108e976b3f69a2cd9f56811cba9b48
[dgit.git] / tests / tests / distropatches-reject
1 #!/bin/bash
2 set -e
3 . tests/lib
4
5 t-archive ruby-rails-3.2 3.2.6-1
6 t-git-none
7
8 cp $troot/pkg-srcs/${p}_3.2.6.orig.tar.gz .
9 t-worktree test
10 cd $p
11
12 t-dgit --quilt=smash -wgf quilt-fixup
13
14 build () {
15         t-dgit -wg --dpkg-buildpackage:-d build
16 }
17
18 expect-fail-distro-series () {
19         local why=$1; shift
20         t-expect-fail \
21         E:"Found active distro-specific series file.*(.*$why.*)" \
22         "$@"
23 }
24
25 mkdir -p debian/patches
26
27 cat >debian/patches/boo <<'END'
28 Description: add boo
29 Author: Ian Jackson <ijackson@chiark.greenend.org.uk>
30
31 ---
32
33 --- a/boo
34 +++ b/boo
35 @@ -0,0 +1 @@
36 +content
37 END
38
39 echo boo >debian/patches/test-dummy.series
40
41 git add debian/patches/boo
42 git add debian/patches/test-dummy.series
43 t-commit 'Add boo (on test-dummy)' 3.2.6-2
44
45 expect-fail-distro-series 'distro being accessed' \
46 build
47
48 defaultvendor=$(perl -we '
49         use Dpkg::Vendor;
50         print lc Dpkg::Vendor::get_current_vendor
51 ')
52 git mv debian/patches/test-dummy.series \
53        debian/patches/$defaultvendor.series
54 t-commit 'Move boo (to default vendor)' 3.2.6-3
55
56 expect-fail-distro-series 'current vendor' \
57 build
58
59 git mv debian/patches/$defaultvendor.series \
60        debian/patches/test-dummy-aside.series
61 t-commit 'Move boo (to test-dummy-aside)' 3.2.6-4
62
63 build
64
65 DEB_VENDOR=test-dummy-aside \
66 expect-fail-distro-series DEB_VENDOR \
67 t-dgit push
68
69 t-dgit push
70
71 cd ..
72 perl -i~ -pe 's/^Dgit:.*\n//' incoming/${p}_${v}.dsc
73 t-archive-process-incoming sid
74
75 rm -rf $p
76
77 DEB_VENDOR=test-dummy-aside \
78 expect-fail-distro-series DEB_VENDOR \
79 t-dgit clone $p
80
81 echo done.