Mercurial > hg
annotate tests/test-cat.t @ 36761:09f320067591
xdiff: remove whitespace related feature
In Mercurial, whitespace related handling are done at a higher level than
the low-level diff algorithm so "ignore spaces". So it's not used by mdiff.
Some of the upcoming optimizations would be more difficult with whitespace
related features kept. So let's remove them.
Differential Revision: https://phab.mercurial-scm.org/D2683
author | Jun Wu <quark@fb.com> |
---|---|
date | Sun, 04 Mar 2018 00:07:04 -0800 |
parents | 4441705b7111 |
children | b1bbff1dd99a |
rev | line source |
---|---|
11874 | 1 $ hg init |
2 $ echo 0 > a | |
3 $ echo 0 > b | |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12070
diff
changeset
|
4 $ hg ci -A -m m |
11874 | 5 adding a |
6 adding b | |
7 $ hg rm a | |
8 $ hg cat a | |
9 0 | |
10 $ hg cat --decode a # more tests in test-encode | |
11 0 | |
12 $ echo 1 > b | |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12070
diff
changeset
|
13 $ hg ci -m m |
11874 | 14 $ echo 2 > b |
15 $ hg cat -r 0 a | |
16 0 | |
17 $ hg cat -r 0 b | |
18 0 | |
19 $ hg cat -r 1 a | |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
12070
diff
changeset
|
20 a: no such file in rev 7040230c159c |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12156
diff
changeset
|
21 [1] |
11874 | 22 $ hg cat -r 1 b |
23 1 | |
17371
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
24 |
24381
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
25 Test multiple files |
17371
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
26 |
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
27 $ echo 3 > c |
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
28 $ hg ci -Am addmore c |
24381
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
29 $ hg cat b c |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
30 1 |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
31 3 |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
32 $ hg cat . |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
33 1 |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
34 3 |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
35 $ hg cat . c |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
36 1 |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
37 3 |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
38 |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
39 Test fileset |
82b82168d045
context.walk: walk all files when file and '.' given
Martin von Zweigbergk <martinvonz@google.com>
parents:
21078
diff
changeset
|
40 |
17371
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
41 $ hg cat 'set:not(b) or a' |
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
42 3 |
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
43 $ hg cat 'set:c or b' |
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
44 1 |
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
45 3 |
1310489eb5d6
fileset: fix generator vs list bug in fast path
Patrick Mezard <patrick@mezard.eu>
parents:
12316
diff
changeset
|
46 |
21078
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
47 $ mkdir tmp |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
48 $ hg cat --output tmp/HH_%H c |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
49 $ hg cat --output tmp/RR_%R c |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
50 $ hg cat --output tmp/h_%h c |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
51 $ hg cat --output tmp/r_%r c |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
52 $ hg cat --output tmp/%s_s c |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
53 $ hg cat --output tmp/%d%%_d c |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
54 $ hg cat --output tmp/%p_p c |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
55 $ hg log -r . --template "{rev}: {node|short}\n" |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
56 2: 45116003780e |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
57 $ find tmp -type f | sort |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
58 tmp/.%_d |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
59 tmp/HH_45116003780e3678b333fb2c99fa7d559c8457e9 |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
60 tmp/RR_2 |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
61 tmp/c_p |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
62 tmp/c_s |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
63 tmp/h_45116003780e |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
64 tmp/r_2 |
50107a4b32e7
cat: explicitly document the supported formatter rules
Matt Harbison <matt_harbison@yahoo.com>
parents:
17371
diff
changeset
|
65 |
32584
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
66 Test template output |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
67 |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
68 $ hg --cwd tmp cat ../b ../c -T '== {path} ({abspath}) ==\n{data}' |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
35007
diff
changeset
|
69 == ../b (b) == |
32584
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
70 1 |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
35007
diff
changeset
|
71 == ../c (c) == |
32584
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
72 3 |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
73 |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
74 $ hg cat b c -Tjson --output - |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
75 [ |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
76 { |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
77 "abspath": "b", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
78 "data": "1\n", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
79 "path": "b" |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
80 }, |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
81 { |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
82 "abspath": "c", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
83 "data": "3\n", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
84 "path": "c" |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
85 } |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
86 ] |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
87 |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
88 $ hg cat b c -Tjson --output 'tmp/%p.json' |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
89 $ cat tmp/b.json |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
90 [ |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
91 { |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
92 "abspath": "b", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
93 "data": "1\n", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
94 "path": "b" |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
95 } |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
96 ] |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
97 $ cat tmp/c.json |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
98 [ |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
99 { |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
100 "abspath": "c", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
101 "data": "3\n", |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
102 "path": "c" |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
103 } |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
104 ] |
746e12a767b3
cat: add formatter support
Yuya Nishihara <yuya@tcha.org>
parents:
30833
diff
changeset
|
105 |
24720
c560d8c68791
cat: disable optimization of single file case for workingctx
Yuya Nishihara <yuya@tcha.org>
parents:
24381
diff
changeset
|
106 Test working directory |
c560d8c68791
cat: disable optimization of single file case for workingctx
Yuya Nishihara <yuya@tcha.org>
parents:
24381
diff
changeset
|
107 |
c560d8c68791
cat: disable optimization of single file case for workingctx
Yuya Nishihara <yuya@tcha.org>
parents:
24381
diff
changeset
|
108 $ echo b-wdir > b |
c560d8c68791
cat: disable optimization of single file case for workingctx
Yuya Nishihara <yuya@tcha.org>
parents:
24381
diff
changeset
|
109 $ hg cat -r 'wdir()' b |
c560d8c68791
cat: disable optimization of single file case for workingctx
Yuya Nishihara <yuya@tcha.org>
parents:
24381
diff
changeset
|
110 b-wdir |
30833
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
111 |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
112 Environment variables are not visible by default |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
113 |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
114 $ PATTERN='t4' hg log -r '.' -T "{ifcontains('PATTERN', envvars, 'yes', 'no')}\n" |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
115 no |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
116 |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
117 Environment variable visibility can be explicit |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
118 |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
119 $ PATTERN='t4' hg log -r '.' -T "{envvars % '{key} -> {value}\n'}" \ |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
120 > --config "experimental.exportableenviron=PATTERN" |
bd5e9647f646
templater: add '{envvars}' to access environment variables
Matt Harbison <matt_harbison@yahoo.com>
parents:
24720
diff
changeset
|
121 PATTERN -> t4 |
35006
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
122 |
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
123 Test behavior of output when directory structure does not already exist |
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
124 |
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
125 $ mkdir foo |
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
126 $ echo a > foo/a |
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
127 $ hg add foo/a |
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
128 $ hg commit -qm "add foo/a" |
8154119ed236
cat: test output path behvaior when target path does not exist
Ryan McElroy <rmcelroy@fb.com>
parents:
32584
diff
changeset
|
129 $ hg cat --output "output/%p" foo/a |
35007
407ec7f3ff02
cmdutil: create dirs for templated cat file output
Ryan McElroy <rmcelroy@fb.com>
parents:
35006
diff
changeset
|
130 $ cat output/foo/a |
407ec7f3ff02
cmdutil: create dirs for templated cat file output
Ryan McElroy <rmcelroy@fb.com>
parents:
35006
diff
changeset
|
131 a |