chiark / gitweb /
test suite: Always pass LC_COLLATE=C to sort(1).
[dgit.git] / tests / tests / gdr-newupstream
1 #!/bin/bash
2 set -e
3 autoimport=
4 . tests/lib
5
6 t-dependencies NO-DGIT GDR
7
8 t-setup-import gdr-convert-gbp-noarchive
9
10 cd $p
11
12 : 'upstream hat'
13
14 new-upstream () {
15         uv=$1
16         t-git-next-date
17         git checkout make-upstream
18         git reset --hard upstream
19         t-make-new-upstream-tarball $uv
20         git push . make-upstream:upstream
21         git checkout master
22         t-git-next-date
23 }
24
25 new-upstream 2.1
26
27 : 'maintainer hat'
28
29 git branch startpoint
30 v=2.1-1
31
32 git checkout master
33
34 t-expect-fail F:'Could not determine appropriate upstream commitish' \
35 t-git-debrebase new-upstream $v
36
37 git tag v2.1 upstream
38
39 t-git-debrebase new-upstream $v
40 t-gdr-good laundered
41 git reflog | egrep 'debrebase new-upstream.*checkout'
42
43 t-git-debrebase stitch
44 t-gdr-good stitched
45
46 git branch ordinary
47
48 : 'with --anchor'
49
50 git reset --hard startpoint
51
52 t-git-debrebase analyse >../anal.anch
53 anchor=$(perl <../anal.anch -ne '
54         next unless m/^(\w+) Anchor\s/;
55         print $1,"\n";
56         exit;
57 ')
58
59 GIT_REFLOG_ACTION='STUNT-RLA' \
60 t-git-debrebase --anchor=$anchor -fanchor-treated new-upstream $v upstream
61 t-gdr-good laundered
62 git reflog | egrep 'STUNT-RLA: debrebase new-upstream'
63 git reflog | egrep 'STUNT-RLA: debrebase: launder for new upstream'
64
65 t-git-debrebase stitch
66 t-gdr-good stitched
67
68 git diff --quiet ordinary
69
70 t-ok