##// END OF EJS Templates
tests: demonstrate that .hgsubstate isn't updated on amend...
Yuya Nishihara -
r35017:3f909147 stable
parent child Browse files
Show More
@@ -0,0 +1,213 b''
1 #testcases obsstore-off obsstore-on
2
3 $ cat << EOF >> $HGRCPATH
4 > [extensions]
5 > amend =
6 > EOF
7
8 #if obsstore-on
9 $ cat << EOF >> $HGRCPATH
10 > [experimental]
11 > evolution.createmarkers = True
12 > EOF
13 #endif
14
15 Prepare parent repo
16 -------------------
17
18 $ hg init r
19 $ cd r
20
21 $ echo a > a
22 $ hg ci -Am0
23 adding a
24
25 Link first subrepo
26 ------------------
27
28 $ echo 's = s' >> .hgsub
29 $ hg add .hgsub
30 $ hg init s
31
32 amend without .hgsub
33
34 BROKEN: should say "can't commit subrepos without .hgsub"
35 $ hg amend s
36 nothing changed
37 [1]
38
39 amend with subrepo
40
41 BROKEN: should update .hgsubstate
42 $ hg amend
43 saved backup bundle to * (glob) (obsstore-off !)
44 $ hg status --change .
45 A .hgsub
46 A a
47
48 FIX UP .hgsubstate
49
50 $ hg ci -mfix
51 $ hg rollback -q
52 $ hg add .hgsubstate
53 $ hg amend
54 saved backup bundle to * (glob) (obsstore-off !)
55
56 $ cat .hgsubstate
57 0000000000000000000000000000000000000000 s
58
59 Update subrepo
60 --------------
61
62 add new commit to be amended
63
64 $ echo a >> a
65 $ hg ci -m1
66
67 amend with dirty subrepo
68
69 $ echo a >> s/a
70 $ hg add -R s
71 adding s/a
72 BROKEN: should say "uncommitted changes in subrepository"
73 $ hg amend
74 nothing changed
75 [1]
76
77 amend with modified subrepo
78
79 $ hg ci -R s -m0
80 BROKEN: should update .hgsubstate
81 $ hg amend
82 nothing changed
83 [1]
84 $ hg status --change .
85 M a
86
87 FIX UP .hgsubstate
88
89 $ hg ci -mfix
90 $ hg rollback -q
91 $ hg amend
92 saved backup bundle to * (glob) (obsstore-off !)
93
94 $ cat .hgsubstate
95 f7b1eb17ad24730a1651fccd46c43826d1bbc2ac s
96
97 revert subrepo change
98
99 $ hg up -R s -q null
100 BROKEN: should update .hgsubstate
101 $ hg amend
102 nothing changed
103 [1]
104
105 FIX UP .hgsubstate
106
107 $ hg ci -mfix
108 $ hg rollback -q
109 $ hg amend
110 saved backup bundle to * (glob) (obsstore-off !)
111
112 $ hg status --change .
113 M a
114
115 Link another subrepo
116 --------------------
117
118 add new commit to be amended
119
120 $ echo b >> b
121 $ hg ci -qAm2
122
123 also checks if non-subrepo change is included
124
125 $ echo a >> a
126
127 amend with another subrepo
128
129 $ hg init t
130 $ echo b >> t/b
131 $ hg ci -R t -Am0
132 adding b
133 $ echo 't = t' >> .hgsub
134 BROKEN: should update .hgsubstate
135 $ hg amend
136 saved backup bundle to * (glob) (obsstore-off !)
137 $ hg status --change .
138 M .hgsub
139 M a
140 A b
141
142 FIX UP .hgsubstate
143
144 $ hg ci -mfix
145 $ hg rollback -q
146 $ hg amend
147 saved backup bundle to * (glob) (obsstore-off !)
148
149 $ cat .hgsubstate
150 0000000000000000000000000000000000000000 s
151 bfb1a4fb358498a9533dabf4f2043d94162f1fcd t
152
153 Unlink one subrepo
154 ------------------
155
156 add new commit to be amended
157
158 $ echo a >> a
159 $ hg ci -m3
160
161 amend with one subrepo dropped
162
163 $ echo 't = t' > .hgsub
164 BROKEN: should update .hgsubstate
165 $ hg amend
166 saved backup bundle to * (glob) (obsstore-off !)
167 $ hg status --change .
168 M .hgsub
169 M a
170
171 FIX UP .hgsubstate
172
173 $ echo 's = s' > .hgsub
174 $ hg amend -q
175 $ echo 't = t' > .hgsub
176 $ hg ci -mfix
177 $ hg rollback -q
178 $ hg amend
179 saved backup bundle to * (glob) (obsstore-off !)
180
181 $ cat .hgsubstate
182 bfb1a4fb358498a9533dabf4f2043d94162f1fcd t
183
184 Unlink subrepos completely
185 --------------------------
186
187 add new commit to be amended
188
189 $ echo a >> a
190 $ hg ci -m3
191
192 amend with .hgsub removed
193
194 $ hg rm .hgsub
195 BROKEN: should update .hgsubstate
196 $ hg amend
197 saved backup bundle to * (glob) (obsstore-off !)
198 $ hg status --change .
199 M a
200 R .hgsub
201
202 FIX UP .hgsubstate
203
204 $ hg forget .hgsubstate
205 $ hg amend
206 saved backup bundle to * (glob) (obsstore-off !)
207
208 $ hg status --change .
209 M a
210 R .hgsub
211 R .hgsubstate
212
213 $ cd ..
General Comments 0
You need to be logged in to leave comments. Login now