##// END OF EJS Templates
py3: add b'' prefixes in tests/test-diff-color.t...
Pulkit Goyal -
r39653:c8e371ee default
parent child Browse files
Show More
@@ -1,416 +1,416 b''
1 1 Setup
2 2
3 3 $ cat <<EOF >> $HGRCPATH
4 4 > [ui]
5 5 > color = yes
6 6 > formatted = always
7 7 > paginate = never
8 8 > [color]
9 9 > mode = ansi
10 10 > EOF
11 11 $ hg init repo
12 12 $ cd repo
13 13 $ cat > a <<EOF
14 14 > c
15 15 > c
16 16 > a
17 17 > a
18 18 > b
19 19 > a
20 20 > a
21 21 > c
22 22 > c
23 23 > EOF
24 24 $ hg ci -Am adda
25 25 \x1b[0;32madding a\x1b[0m (esc)
26 26 $ cat > a <<EOF
27 27 > c
28 28 > c
29 29 > a
30 30 > a
31 31 > dd
32 32 > a
33 33 > a
34 34 > c
35 35 > c
36 36 > EOF
37 37
38 38 default context
39 39
40 40 $ hg diff --nodates
41 41 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
42 42 \x1b[0;31;1m--- a/a\x1b[0m (esc)
43 43 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
44 44 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
45 45 c
46 46 a
47 47 a
48 48 \x1b[0;31m-b\x1b[0m (esc)
49 49 \x1b[0;32m+dd\x1b[0m (esc)
50 50 a
51 51 a
52 52 c
53 53
54 54 trailing whitespace
55 55
56 56 $ cp a a.orig
57 57 >>> with open('a', 'rb') as f:
58 58 ... data = f.read()
59 59 >>> with open('a', 'wb') as f:
60 ... f.write(data.replace('dd', 'dd \r'))
60 ... f.write(data.replace(b'dd', b'dd \r'))
61 61 $ hg diff --nodates
62 62 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
63 63 \x1b[0;31;1m--- a/a\x1b[0m (esc)
64 64 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
65 65 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
66 66 c
67 67 a
68 68 a
69 69 \x1b[0;31m-b\x1b[0m (esc)
70 70 \x1b[0;32m+dd\x1b[0m\x1b[0;1;41m \x1b[0m\r (esc)
71 71 a
72 72 a
73 73 c
74 74
75 75 $ mv a.orig a
76 76
77 77 (check that 'ui.color=yes' match '--color=auto')
78 78
79 79 $ hg diff --nodates --config ui.formatted=no
80 80 diff -r cf9f4ba66af2 a
81 81 --- a/a
82 82 +++ b/a
83 83 @@ -2,7 +2,7 @@
84 84 c
85 85 a
86 86 a
87 87 -b
88 88 +dd
89 89 a
90 90 a
91 91 c
92 92
93 93 (check that 'ui.color=no' disable color)
94 94
95 95 $ hg diff --nodates --config ui.formatted=yes --config ui.color=no
96 96 diff -r cf9f4ba66af2 a
97 97 --- a/a
98 98 +++ b/a
99 99 @@ -2,7 +2,7 @@
100 100 c
101 101 a
102 102 a
103 103 -b
104 104 +dd
105 105 a
106 106 a
107 107 c
108 108
109 109 (check that 'ui.color=always' force color)
110 110
111 111 $ hg diff --nodates --config ui.formatted=no --config ui.color=always
112 112 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
113 113 \x1b[0;31;1m--- a/a\x1b[0m (esc)
114 114 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
115 115 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
116 116 c
117 117 a
118 118 a
119 119 \x1b[0;31m-b\x1b[0m (esc)
120 120 \x1b[0;32m+dd\x1b[0m (esc)
121 121 a
122 122 a
123 123 c
124 124
125 125 --unified=2
126 126
127 127 $ hg diff --nodates -U 2
128 128 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
129 129 \x1b[0;31;1m--- a/a\x1b[0m (esc)
130 130 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
131 131 \x1b[0;35m@@ -3,5 +3,5 @@\x1b[0m (esc)
132 132 a
133 133 a
134 134 \x1b[0;31m-b\x1b[0m (esc)
135 135 \x1b[0;32m+dd\x1b[0m (esc)
136 136 a
137 137 a
138 138
139 139 diffstat
140 140
141 141 $ hg diff --stat
142 142 a | 2 \x1b[0;32m+\x1b[0m\x1b[0;31m-\x1b[0m (esc)
143 143 1 files changed, 1 insertions(+), 1 deletions(-)
144 144 $ cat <<EOF >> $HGRCPATH
145 145 > [extensions]
146 146 > record =
147 147 > [ui]
148 148 > interactive = true
149 149 > [diff]
150 150 > git = True
151 151 > EOF
152 152
153 153 #if execbit
154 154
155 155 record
156 156
157 157 $ chmod +x a
158 158 $ hg record -m moda a <<EOF
159 159 > y
160 160 > y
161 161 > EOF
162 162 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
163 163 \x1b[0;36;1mold mode 100644\x1b[0m (esc)
164 164 \x1b[0;36;1mnew mode 100755\x1b[0m (esc)
165 165 1 hunks, 1 lines changed
166 166 \x1b[0;33mexamine changes to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
167 167
168 168 \x1b[0;35m@@ -2,7 +2,7 @@ c\x1b[0m (esc)
169 169 c
170 170 a
171 171 a
172 172 \x1b[0;31m-b\x1b[0m (esc)
173 173 \x1b[0;32m+dd\x1b[0m (esc)
174 174 a
175 175 a
176 176 c
177 177 \x1b[0;33mrecord this change to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
178 178
179 179
180 180 $ echo "[extensions]" >> $HGRCPATH
181 181 $ echo "mq=" >> $HGRCPATH
182 182 $ hg rollback
183 183 repository tip rolled back to revision 0 (undo commit)
184 184 working directory now based on revision 0
185 185
186 186 qrecord
187 187
188 188 $ hg qrecord -m moda patch <<EOF
189 189 > y
190 190 > y
191 191 > EOF
192 192 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
193 193 \x1b[0;36;1mold mode 100644\x1b[0m (esc)
194 194 \x1b[0;36;1mnew mode 100755\x1b[0m (esc)
195 195 1 hunks, 1 lines changed
196 196 \x1b[0;33mexamine changes to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
197 197
198 198 \x1b[0;35m@@ -2,7 +2,7 @@ c\x1b[0m (esc)
199 199 c
200 200 a
201 201 a
202 202 \x1b[0;31m-b\x1b[0m (esc)
203 203 \x1b[0;32m+dd\x1b[0m (esc)
204 204 a
205 205 a
206 206 c
207 207 \x1b[0;33mrecord this change to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
208 208
209 209
210 210 $ hg qpop -a
211 211 popping patch
212 212 patch queue now empty
213 213
214 214 #endif
215 215
216 216 issue3712: test colorization of subrepo diff
217 217
218 218 $ hg init sub
219 219 $ echo b > sub/b
220 220 $ hg -R sub commit -Am 'create sub'
221 221 \x1b[0;32madding b\x1b[0m (esc)
222 222 $ echo 'sub = sub' > .hgsub
223 223 $ hg add .hgsub
224 224 $ hg commit -m 'add subrepo sub'
225 225 $ echo aa >> a
226 226 $ echo bb >> sub/b
227 227
228 228 $ hg diff -S
229 229 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
230 230 \x1b[0;31;1m--- a/a\x1b[0m (esc)
231 231 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
232 232 \x1b[0;35m@@ -7,3 +7,4 @@\x1b[0m (esc)
233 233 a
234 234 c
235 235 c
236 236 \x1b[0;32m+aa\x1b[0m (esc)
237 237 \x1b[0;1mdiff --git a/sub/b b/sub/b\x1b[0m (esc)
238 238 \x1b[0;31;1m--- a/sub/b\x1b[0m (esc)
239 239 \x1b[0;32;1m+++ b/sub/b\x1b[0m (esc)
240 240 \x1b[0;35m@@ -1,1 +1,2 @@\x1b[0m (esc)
241 241 b
242 242 \x1b[0;32m+bb\x1b[0m (esc)
243 243
244 244 test tabs
245 245
246 246 $ cat >> a <<EOF
247 247 > one tab
248 248 > two tabs
249 249 > end tab
250 250 > mid tab
251 251 > all tabs
252 252 > EOF
253 253 $ hg diff --nodates
254 254 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
255 255 \x1b[0;31;1m--- a/a\x1b[0m (esc)
256 256 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
257 257 \x1b[0;35m@@ -7,3 +7,9 @@\x1b[0m (esc)
258 258 a
259 259 c
260 260 c
261 261 \x1b[0;32m+aa\x1b[0m (esc)
262 262 \x1b[0;32m+\x1b[0m \x1b[0;32mone tab\x1b[0m (esc)
263 263 \x1b[0;32m+\x1b[0m \x1b[0;32mtwo tabs\x1b[0m (esc)
264 264 \x1b[0;32m+end tab\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
265 265 \x1b[0;32m+mid\x1b[0m \x1b[0;32mtab\x1b[0m (esc)
266 266 \x1b[0;32m+\x1b[0m \x1b[0;32mall\x1b[0m \x1b[0;32mtabs\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
267 267 $ echo "[color]" >> $HGRCPATH
268 268 $ echo "diff.tab = bold magenta" >> $HGRCPATH
269 269 $ hg diff --nodates
270 270 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
271 271 \x1b[0;31;1m--- a/a\x1b[0m (esc)
272 272 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
273 273 \x1b[0;35m@@ -7,3 +7,9 @@\x1b[0m (esc)
274 274 a
275 275 c
276 276 c
277 277 \x1b[0;32m+aa\x1b[0m (esc)
278 278 \x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mone tab\x1b[0m (esc)
279 279 \x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtwo tabs\x1b[0m (esc)
280 280 \x1b[0;32m+end tab\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
281 281 \x1b[0;32m+mid\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtab\x1b[0m (esc)
282 282 \x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mall\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtabs\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
283 283
284 284 $ cd ..
285 285
286 286 test inline color diff
287 287
288 288 $ hg init inline
289 289 $ cd inline
290 290 $ cat > file1 << EOF
291 291 > this is the first line
292 292 > this is the second line
293 293 > third line starts with space
294 294 > + starts with a plus sign
295 295 > this one with one tab
296 296 > now with full two tabs
297 297 > now tabs everywhere, much fun
298 298 >
299 299 > this line won't change
300 300 >
301 301 > two lines are going to
302 302 > be changed into three!
303 303 >
304 304 > three of those lines will
305 305 > collapse onto one
306 306 > (to see if it works)
307 307 > EOF
308 308 $ hg add file1
309 309 $ hg ci -m 'commit'
310 310
311 311 $ cat > file1 << EOF
312 312 > that is the first paragraph
313 313 > this is the second line
314 314 > third line starts with space
315 315 > - starts with a minus sign
316 316 > this one with two tab
317 317 > now with full three tabs
318 318 > now there are tabs everywhere, much fun
319 319 >
320 320 > this line won't change
321 321 >
322 322 > two lines are going to
323 323 > (entirely magically,
324 324 > assuming this works)
325 325 > be changed into four!
326 326 >
327 327 > three of those lines have
328 328 > collapsed onto one
329 329 > EOF
330 330 $ hg diff --config diff.word-diff=False --color=debug
331 331 [diff.diffline|diff --git a/file1 b/file1]
332 332 [diff.file_a|--- a/file1]
333 333 [diff.file_b|+++ b/file1]
334 334 [diff.hunk|@@ -1,16 +1,17 @@]
335 335 [diff.deleted|-this is the first line]
336 336 [diff.deleted|-this is the second line]
337 337 [diff.deleted|- third line starts with space]
338 338 [diff.deleted|-+ starts with a plus sign]
339 339 [diff.deleted|-][diff.tab| ][diff.deleted|this one with one tab]
340 340 [diff.deleted|-][diff.tab| ][diff.deleted|now with full two tabs]
341 341 [diff.deleted|-][diff.tab| ][diff.deleted|now tabs][diff.tab| ][diff.deleted|everywhere, much fun]
342 342 [diff.inserted|+that is the first paragraph]
343 343 [diff.inserted|+ this is the second line]
344 344 [diff.inserted|+third line starts with space]
345 345 [diff.inserted|+- starts with a minus sign]
346 346 [diff.inserted|+][diff.tab| ][diff.inserted|this one with two tab]
347 347 [diff.inserted|+][diff.tab| ][diff.inserted|now with full three tabs]
348 348 [diff.inserted|+][diff.tab| ][diff.inserted|now there are tabs][diff.tab| ][diff.inserted|everywhere, much fun]
349 349
350 350 this line won't change
351 351
352 352 two lines are going to
353 353 [diff.deleted|-be changed into three!]
354 354 [diff.inserted|+(entirely magically,]
355 355 [diff.inserted|+ assuming this works)]
356 356 [diff.inserted|+be changed into four!]
357 357
358 358 [diff.deleted|-three of those lines will]
359 359 [diff.deleted|-collapse onto one]
360 360 [diff.deleted|-(to see if it works)]
361 361 [diff.inserted|+three of those lines have]
362 362 [diff.inserted|+collapsed onto one]
363 363 $ hg diff --config diff.word-diff=True --color=debug
364 364 [diff.diffline|diff --git a/file1 b/file1]
365 365 [diff.file_a|--- a/file1]
366 366 [diff.file_b|+++ b/file1]
367 367 [diff.hunk|@@ -1,16 +1,17 @@]
368 368 [diff.deleted|-][diff.deleted.changed|this][diff.deleted.unchanged| is the first ][diff.deleted.changed|line]
369 369 [diff.deleted|-][diff.deleted.unchanged|this is the second line]
370 370 [diff.deleted|-][diff.deleted.changed| ][diff.deleted.unchanged|third line starts with space]
371 371 [diff.deleted|-][diff.deleted.changed|+][diff.deleted.unchanged| starts with a ][diff.deleted.changed|plus][diff.deleted.unchanged| sign]
372 372 [diff.deleted|-][diff.tab| ][diff.deleted.unchanged|this one with ][diff.deleted.changed|one][diff.deleted.unchanged| tab]
373 373 [diff.deleted|-][diff.tab| ][diff.deleted.unchanged|now with full ][diff.deleted.changed|two][diff.deleted.unchanged| tabs]
374 374 [diff.deleted|-][diff.tab| ][diff.deleted.unchanged|now ][diff.deleted.unchanged|tabs][diff.tab| ][diff.deleted.unchanged|everywhere, much fun]
375 375 [diff.inserted|+][diff.inserted.changed|that][diff.inserted.unchanged| is the first ][diff.inserted.changed|paragraph]
376 376 [diff.inserted|+][diff.inserted.changed| ][diff.inserted.unchanged|this is the second line]
377 377 [diff.inserted|+][diff.inserted.unchanged|third line starts with space]
378 378 [diff.inserted|+][diff.inserted.changed|-][diff.inserted.unchanged| starts with a ][diff.inserted.changed|minus][diff.inserted.unchanged| sign]
379 379 [diff.inserted|+][diff.tab| ][diff.inserted.unchanged|this one with ][diff.inserted.changed|two][diff.inserted.unchanged| tab]
380 380 [diff.inserted|+][diff.tab| ][diff.inserted.unchanged|now with full ][diff.inserted.changed|three][diff.inserted.unchanged| tabs]
381 381 [diff.inserted|+][diff.tab| ][diff.inserted.unchanged|now ][diff.inserted.changed|there are ][diff.inserted.unchanged|tabs][diff.tab| ][diff.inserted.unchanged|everywhere, much fun]
382 382
383 383 this line won't change
384 384
385 385 two lines are going to
386 386 [diff.deleted|-][diff.deleted.unchanged|be changed into ][diff.deleted.changed|three][diff.deleted.unchanged|!]
387 387 [diff.inserted|+][diff.inserted.changed|(entirely magically,]
388 388 [diff.inserted|+][diff.inserted.changed| assuming this works)]
389 389 [diff.inserted|+][diff.inserted.unchanged|be changed into ][diff.inserted.changed|four][diff.inserted.unchanged|!]
390 390
391 391 [diff.deleted|-][diff.deleted.unchanged|three of those lines ][diff.deleted.changed|will]
392 392 [diff.deleted|-][diff.deleted.changed|collapse][diff.deleted.unchanged| onto one]
393 393 [diff.deleted|-][diff.deleted.changed|(to see if it works)]
394 394 [diff.inserted|+][diff.inserted.unchanged|three of those lines ][diff.inserted.changed|have]
395 395 [diff.inserted|+][diff.inserted.changed|collapsed][diff.inserted.unchanged| onto one]
396 396
397 397 multibyte character shouldn't be broken up in word diff:
398 398
399 399 $ $PYTHON <<'EOF'
400 400 > with open("utf8", "wb") as f:
401 401 > f.write(b"blah \xe3\x82\xa2 blah\n")
402 402 > EOF
403 403 $ hg ci -Am 'add utf8 char' utf8
404 404 $ $PYTHON <<'EOF'
405 405 > with open("utf8", "wb") as f:
406 406 > f.write(b"blah \xe3\x82\xa4 blah\n")
407 407 > EOF
408 408 $ hg ci -m 'slightly change utf8 char' utf8
409 409
410 410 $ hg diff --config diff.word-diff=True --color=debug -c.
411 411 [diff.diffline|diff --git a/utf8 b/utf8]
412 412 [diff.file_a|--- a/utf8]
413 413 [diff.file_b|+++ b/utf8]
414 414 [diff.hunk|@@ -1,1 +1,1 @@]
415 415 [diff.deleted|-][diff.deleted.unchanged|blah ][diff.deleted.changed|\xe3\x82\xa2][diff.deleted.unchanged| blah] (esc)
416 416 [diff.inserted|+][diff.inserted.unchanged|blah ][diff.inserted.changed|\xe3\x82\xa4][diff.inserted.unchanged| blah] (esc)
General Comments 0
You need to be logged in to leave comments. Login now