Mercurial > hg
annotate tests/test-dispatch.t @ 48520:791f5d5f7a96
hg-core: dedup LazyAncestors Iterator impl
… Which has been moved to the vcsgraph crate.
AncestorsIterator cannot yet be removed because it is still being used in
hg-core.
Differential Revision: https://phab.mercurial-scm.org/D11948
author | pacien <pacien.trangirard@pacien.net> |
---|---|
date | Fri, 10 Dec 2021 16:25:02 +0100 |
parents | 8c4881c07f57 |
children |
rev | line source |
---|---|
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
1 test command parsing and dispatch |
4563
8044be585b91
dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff
changeset
|
2 |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
3 $ hg init a |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
4 $ cd a |
14115
1d5faa2c970f
tests: move test-issue436 in test-dispatch where fancyopts is tested
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
13967
diff
changeset
|
5 |
1d5faa2c970f
tests: move test-issue436 in test-dispatch where fancyopts is tested
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
13967
diff
changeset
|
6 Redundant options used to crash (issue436): |
1d5faa2c970f
tests: move test-issue436 in test-dispatch where fancyopts is tested
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
13967
diff
changeset
|
7 $ hg -v log -v |
1d5faa2c970f
tests: move test-issue436 in test-dispatch where fancyopts is tested
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
13967
diff
changeset
|
8 $ hg -v log -v x |
1d5faa2c970f
tests: move test-issue436 in test-dispatch where fancyopts is tested
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
13967
diff
changeset
|
9 |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
10 $ echo a > a |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
11 $ hg ci -Ama |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
12 adding a |
4563
8044be585b91
dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff
changeset
|
13 |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
14 Missing arg: |
4621
6fc26982f203
dispatch: fix handling of incorrect number of arguments
Matt Mackall <mpm@selenic.com>
parents:
4563
diff
changeset
|
15 |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
16 $ hg cat |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
17 hg cat: invalid arguments |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
18 hg cat [OPTION]... FILE... |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
19 |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
20 output the current or given revision of files |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
21 |
22117
c1d93edcf004
help: fold repeatable option message into option table header
Matt Mackall <mpm@selenic.com>
parents:
22111
diff
changeset
|
22 options ([+] can be repeated): |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
23 |
15145
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14115
diff
changeset
|
24 -o --output FORMAT print output to file with formatted name |
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14115
diff
changeset
|
25 -r --rev REV print the given revision |
30152
d65e246100ed
help: backout f3c4edfd35e1 (mark boolean flags with [no-] in help) for now
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30024
diff
changeset
|
26 --decode apply any matching decode filter |
15145
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14115
diff
changeset
|
27 -I --include PATTERN [+] include names matching the given patterns |
ff26712a0c50
help: use RST to format option lists
Matt Mackall <mpm@selenic.com>
parents:
14115
diff
changeset
|
28 -X --exclude PATTERN [+] exclude names matching the given patterns |
39931
0d703063d0c8
formatter: remove experimental marker from -T option
Yuya Nishihara <yuya@tcha.org>
parents:
35393
diff
changeset
|
29 -T --template TEMPLATE display with template |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
30 |
29974
7109d5ddeb0c
help: use single quotes in use warning
timeless <timeless@mozdev.org>
parents:
22117
diff
changeset
|
31 (use 'hg cat -h' to show more help) |
46262
9c9e0b4b2ca7
error: use detailed exit code 10 for command errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45918
diff
changeset
|
32 [10] |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
33 |
35027
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
34 Missing parameter for early option: |
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
35 |
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
36 $ hg log -R 2>&1 | grep 'hg log' |
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
37 hg log: option -R requires argument |
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
38 hg log [OPTION]... [FILE] |
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
39 (use 'hg log -h' to show more help) |
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
40 |
35226
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
41 "--" may be an option value: |
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
42 |
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
43 $ hg -R -- log |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
44 abort: repository -- not found |
35226
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
45 [255] |
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
46 $ hg log -R -- |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
47 abort: repository -- not found |
35226
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
48 [255] |
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
49 $ hg log -T -- |
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
50 -- (no-eol) |
5b569d512fbd
fancyopts: use getopt.gnu_getopt()
Yuya Nishihara <yuya@tcha.org>
parents:
35223
diff
changeset
|
51 $ hg log -T -- -k nomatch |
35027
7384250eabd9
dispatch: do not drop unpaired argument at _earlygetopt()
Yuya Nishihara <yuya@tcha.org>
parents:
34953
diff
changeset
|
52 |
35029
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
53 Parsing of early options should stop at "--": |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
54 |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
55 $ hg cat -- --config=hooks.pre-cat=false |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
56 --config=hooks.pre-cat=false: no such file in rev cb9a9f314b8b |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
57 [1] |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
58 $ hg cat -- --debugger |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
59 --debugger: no such file in rev cb9a9f314b8b |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
60 [1] |
e16f68c4abe3
dispatch: stop parsing of early boolean option at "--"
Yuya Nishihara <yuya@tcha.org>
parents:
35027
diff
changeset
|
61 |
35030
d9aba3730d30
dispatch: abort if early boolean options can't be parsed
Yuya Nishihara <yuya@tcha.org>
parents:
35029
diff
changeset
|
62 Unparsable form of early options: |
d9aba3730d30
dispatch: abort if early boolean options can't be parsed
Yuya Nishihara <yuya@tcha.org>
parents:
35029
diff
changeset
|
63 |
d9aba3730d30
dispatch: abort if early boolean options can't be parsed
Yuya Nishihara <yuya@tcha.org>
parents:
35029
diff
changeset
|
64 $ hg cat --debugg |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
65 abort: option --debugger may not be abbreviated |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
66 [10] |
35030
d9aba3730d30
dispatch: abort if early boolean options can't be parsed
Yuya Nishihara <yuya@tcha.org>
parents:
35029
diff
changeset
|
67 |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
68 Parsing failure of early options should be detected before executing the |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
69 command: |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
70 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
71 $ hg log -b '--config=hooks.pre-log=false' default |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
72 abort: option --config may not be abbreviated |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
73 [10] |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
74 $ hg log -b -R. default |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
75 abort: option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
76 [10] |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
77 $ hg log --cwd .. -b --cwd=. default |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
78 abort: option --cwd may not be abbreviated |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
79 [10] |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
80 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
81 However, we can't prevent it from loading extensions and configs: |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
82 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
83 $ cat <<EOF > bad.py |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
84 > raise Exception('bad') |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
85 > EOF |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
86 $ hg log -b '--config=extensions.bad=bad.py' default |
48360
e4acdf5d94a2
extensions: highlight the name of the faulty extensions in the error message
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46820
diff
changeset
|
87 *** failed to import extension "bad" from bad.py: bad |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
88 abort: option --config may not be abbreviated |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
89 [10] |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
90 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
91 $ mkdir -p badrepo/.hg |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
92 $ echo 'invalid-syntax' > badrepo/.hg/hgrc |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
93 $ hg log -b -Rbadrepo default |
45894
9dc1351d0b5f
errors: raise ConfigError on failure to parse config file
Martin von Zweigbergk <martinvonz@google.com>
parents:
41385
diff
changeset
|
94 config error at badrepo/.hg/hgrc:1: invalid-syntax |
9dc1351d0b5f
errors: raise ConfigError on failure to parse config file
Martin von Zweigbergk <martinvonz@google.com>
parents:
41385
diff
changeset
|
95 [30] |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
96 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
97 $ hg log -b --cwd=inexistent default |
35230
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35227
diff
changeset
|
98 abort: $ENOENT$: 'inexistent' |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
99 [255] |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
100 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
101 $ hg log -b '--config=ui.traceback=yes' 2>&1 | grep '^Traceback' |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
102 Traceback (most recent call last): |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
103 $ hg log -b '--config=profiling.enabled=yes' 2>&1 | grep -i sample |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
104 Sample count: .*|No samples recorded\. (re) |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
105 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
106 Early options can't be specified in [aliases] and [defaults] because they are |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
107 applied before the command name is resolved: |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
108 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
109 $ hg log -b '--config=alias.log=log --config=hooks.pre-log=false' |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
110 hg log: option -b not recognized |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
111 error in definition for alias 'log': --config may only be given on the command |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
112 line |
46262
9c9e0b4b2ca7
error: use detailed exit code 10 for command errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
45918
diff
changeset
|
113 [10] |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
114 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
115 $ hg log -b '--config=defaults.log=--config=hooks.pre-log=false' |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
116 abort: option --config may not be abbreviated |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
117 [10] |
35034
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
118 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
119 Shell aliases bypass any command parsing rules but for the early one: |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
120 |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
121 $ hg log -b '--config=alias.log=!echo howdy' |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
122 howdy |
02845f7441af
dispatch: verify result of early command parsing
Yuya Nishihara <yuya@tcha.org>
parents:
35030
diff
changeset
|
123 |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
124 Early options must come first if HGPLAIN=+strictflags is specified: |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
125 (BUG: chg cherry-picks early options to pass them as a server command) |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
126 |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
127 #if no-chg |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
128 $ HGPLAIN=+strictflags hg log -b --config='hooks.pre-log=false' default |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
129 abort: unknown revision '--config=hooks.pre-log=false' |
48368
8c4881c07f57
errors: use detailed exit code for RepoLookupError
Martin von Zweigbergk <martinvonz@google.com>
parents:
48360
diff
changeset
|
130 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
131 $ HGPLAIN=+strictflags hg log -b -R. default |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
132 abort: unknown revision '-R.' |
48368
8c4881c07f57
errors: use detailed exit code for RepoLookupError
Martin von Zweigbergk <martinvonz@google.com>
parents:
48360
diff
changeset
|
133 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
134 $ HGPLAIN=+strictflags hg log -b --cwd=. default |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
135 abort: unknown revision '--cwd=.' |
48368
8c4881c07f57
errors: use detailed exit code for RepoLookupError
Martin von Zweigbergk <martinvonz@google.com>
parents:
48360
diff
changeset
|
136 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
137 #endif |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
138 $ HGPLAIN=+strictflags hg log -b --debugger default |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
139 abort: unknown revision '--debugger' |
48368
8c4881c07f57
errors: use detailed exit code for RepoLookupError
Martin von Zweigbergk <martinvonz@google.com>
parents:
48360
diff
changeset
|
140 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
141 $ HGPLAIN=+strictflags hg log -b --config='alias.log=!echo pwned' default |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
142 abort: unknown revision '--config=alias.log=!echo pwned' |
48368
8c4881c07f57
errors: use detailed exit code for RepoLookupError
Martin von Zweigbergk <martinvonz@google.com>
parents:
48360
diff
changeset
|
143 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
144 |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
145 $ HGPLAIN=+strictflags hg log --config='hooks.pre-log=false' -b default |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
146 abort: option --config may not be abbreviated |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
147 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
148 $ HGPLAIN=+strictflags hg log -q --cwd=.. -b default |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
149 abort: option --cwd may not be abbreviated |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
150 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
151 $ HGPLAIN=+strictflags hg log -q -R . -b default |
45909
ca39c45014fa
errors: remove trailing "!" in messages about bad top-level args
Martin von Zweigbergk <martinvonz@google.com>
parents:
45906
diff
changeset
|
152 abort: option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo |
45918
ac565222b9f8
errors: raise InputError on bad top-level flags
Martin von Zweigbergk <martinvonz@google.com>
parents:
45911
diff
changeset
|
153 [10] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
154 |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
155 $ HGPLAIN=+strictflags hg --config='hooks.pre-log=false' log -b default |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
156 abort: pre-log hook exited with status 1 |
46417
768056549737
errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
46262
diff
changeset
|
157 [40] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
158 $ HGPLAIN=+strictflags hg --cwd .. -q -Ra log -b default |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
159 0:cb9a9f314b8b |
35223
4edd2202f7d7
dispatch: alias --repo to --repository while parsing early options
Yuya Nishihara <yuya@tcha.org>
parents:
35205
diff
changeset
|
160 $ HGPLAIN=+strictflags hg --cwd .. -q --repository a log -b default |
4edd2202f7d7
dispatch: alias --repo to --repository while parsing early options
Yuya Nishihara <yuya@tcha.org>
parents:
35205
diff
changeset
|
161 0:cb9a9f314b8b |
4edd2202f7d7
dispatch: alias --repo to --repository while parsing early options
Yuya Nishihara <yuya@tcha.org>
parents:
35205
diff
changeset
|
162 $ HGPLAIN=+strictflags hg --cwd .. -q --repo a log -b default |
4edd2202f7d7
dispatch: alias --repo to --repository while parsing early options
Yuya Nishihara <yuya@tcha.org>
parents:
35205
diff
changeset
|
163 0:cb9a9f314b8b |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
164 |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
165 For compatibility reasons, HGPLAIN=+strictflags is not enabled by plain HGPLAIN: |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
166 |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
167 $ HGPLAIN= hg log --config='hooks.pre-log=false' -b default |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
168 abort: pre-log hook exited with status 1 |
46417
768056549737
errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
46262
diff
changeset
|
169 [40] |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
170 $ HGPLAINEXCEPT= hg log --cwd .. -q -Ra -b default |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
171 0:cb9a9f314b8b |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
35034
diff
changeset
|
172 |
4563
8044be585b91
dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff
changeset
|
173 [defaults] |
4621
6fc26982f203
dispatch: fix handling of incorrect number of arguments
Matt Mackall <mpm@selenic.com>
parents:
4563
diff
changeset
|
174 |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
175 $ hg cat a |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
176 a |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
177 $ cat >> $HGRCPATH <<EOF |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
178 > [defaults] |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
179 > cat = -r null |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
180 > EOF |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
181 $ hg cat a |
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
182 a: no such file in rev 000000000000 |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12157
diff
changeset
|
183 [1] |
4654
e0e73ba37983
Fix dispatch error message when not in a repo
Brendan Cully <brendan@kublai.com>
parents:
4621
diff
changeset
|
184 |
17014
50fbe9063ff2
tests: convert some 'hghave no-outer-repo' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15145
diff
changeset
|
185 $ cd "$TESTTMP" |
50fbe9063ff2
tests: convert some 'hghave no-outer-repo' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15145
diff
changeset
|
186 |
18506
ef60083b5536
tests: fix for windows - slashes and no serve
Mads Kiilerich <madski@unity3d.com>
parents:
18227
diff
changeset
|
187 OSError "No such file or directory" / "The system cannot find the path |
ef60083b5536
tests: fix for windows - slashes and no serve
Mads Kiilerich <madski@unity3d.com>
parents:
18227
diff
changeset
|
188 specified" should include filename even when it is empty |
18227
720308f741cb
dispatch: show empty filename in OSError aborts
Mads Kiilerich <mads@kiilerich.com>
parents:
18226
diff
changeset
|
189 |
720308f741cb
dispatch: show empty filename in OSError aborts
Mads Kiilerich <mads@kiilerich.com>
parents:
18226
diff
changeset
|
190 $ hg -R a archive '' |
41385
ed99c7b52106
tests: conditionalize Windows difference in test-dispatch.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
41354
diff
changeset
|
191 abort: $ENOENT$: '' (no-windows !) |
ed99c7b52106
tests: conditionalize Windows difference in test-dispatch.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
41354
diff
changeset
|
192 abort: $ENOTDIR$: '' (windows !) |
18227
720308f741cb
dispatch: show empty filename in OSError aborts
Mads Kiilerich <mads@kiilerich.com>
parents:
18226
diff
changeset
|
193 [255] |
720308f741cb
dispatch: show empty filename in OSError aborts
Mads Kiilerich <mads@kiilerich.com>
parents:
18226
diff
changeset
|
194 |
17014
50fbe9063ff2
tests: convert some 'hghave no-outer-repo' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15145
diff
changeset
|
195 #if no-outer-repo |
50fbe9063ff2
tests: convert some 'hghave no-outer-repo' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15145
diff
changeset
|
196 |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
197 No repo: |
4659
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
4654
diff
changeset
|
198 |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
199 $ hg cat |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45894
diff
changeset
|
200 abort: no repository found in '$TESTTMP' (.hg not found) |
45911
8939062597f0
errors: raise InputError on bad repo arguments
Martin von Zweigbergk <martinvonz@google.com>
parents:
45909
diff
changeset
|
201 [10] |
12157
88250a460bf8
tests: unify test-dispatch
Adrian Buehlmann <adrian@cadifra.com>
parents:
12028
diff
changeset
|
202 |
17014
50fbe9063ff2
tests: convert some 'hghave no-outer-repo' to #if
Mads Kiilerich <mads@kiilerich.com>
parents:
15145
diff
changeset
|
203 #endif |
34643
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
204 |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
205 #if rmcwd |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
206 |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
207 Current directory removed: |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
208 |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
209 $ mkdir $TESTTMP/repo1 |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
210 $ cd $TESTTMP/repo1 |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
211 $ rm -rf $TESTTMP/repo1 |
34953 | 212 |
213 The output could be one of the following and something else: | |
214 chg: abort: failed to getcwd (errno = *) (glob) | |
215 abort: error getting current working directory: * (glob) | |
35230
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35227
diff
changeset
|
216 sh: 0: getcwd() failed: $ENOENT$ |
34953 | 217 Since the exact behavior depends on the shell, only check it returns non-zero. |
218 $ HGDEMANDIMPORT=disable hg version -q 2>/dev/null || false | |
219 [1] | |
34643
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
220 |
f42dec9c976e
hgweb: do not import uuid immediately to avoid its side effect
Jun Wu <quark@fb.com>
parents:
30152
diff
changeset
|
221 #endif |