Mercurial > hg
annotate tests/test-commandserver.t @ 48670:6d2ddea0721a stable
stream-clone: filter possible missing requirements using all supported one
The `supportedformat` requirements is missing some important requirements and it
seems better to filter out with all requirements we know, not just an
"arbitrary" subset.
The `supportedformat` set is lacking some important requirements (for example
`revlog-compression-zstd`). This is getting fixed on default (for Mercurial 6.1)
However, fixing that in 6.1 means the stream requirements sent over the wire
will contains more items. And if we don't apply this fix on older version, they
might end up complaining about lacking support for feature they actually support
for years.
This patch does not fix the deeper problem (advertised stream requirement
lacking some of them), but focus on the trivial part : Lets use the full set of
supported requirement for looking for unsupported ones.
This patch should be simple to backport to older version of Mercurial and
packager should be encouraged to do so.
This is a graft of d9017df70135 from default.
Differential Revision: https://phab.mercurial-scm.org/D12091
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 24 Jan 2022 11:49:06 +0100 |
parents | bf11ff22a9af |
children | 8c4881c07f57 f7086f6173f8 |
rev | line source |
---|---|
47587
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
1 #require no-rhg no-chg |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
2 |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
3 XXX-RHG this test hangs if `hg` is really `rhg`. This was hidden by the use of |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
4 `alias hg=rhg` by run-tests.py. With such alias removed, this test is revealed |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
5 buggy. This need to be resolved sooner than later. |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
6 |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
7 XXX-CHG this test hangs if `hg` is really `chg`. This was hidden by the use of |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
8 `alias hg=chg` by run-tests.py. With such alias removed, this test is revealed |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
9 buggy. This need to be resolved sooner than later. |
be496e3489b9
tests: blacklist a handful of test with `rhg` or `chg`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
10 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
11 #if windows |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
12 $ PYTHONPATH="$TESTDIR/../contrib;$PYTHONPATH" |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
13 #else |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
14 $ PYTHONPATH="$TESTDIR/../contrib:$PYTHONPATH" |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
15 #endif |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
16 $ export PYTHONPATH |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
17 |
23053
5ba11ab48fcf
ui: separate option to show prompt echo, enabled only in tests (issue4417)
Yuya Nishihara <yuya@tcha.org>
parents:
23036
diff
changeset
|
18 typical client does not want echo-back messages, so test without it: |
5ba11ab48fcf
ui: separate option to show prompt echo, enabled only in tests (issue4417)
Yuya Nishihara <yuya@tcha.org>
parents:
23036
diff
changeset
|
19 |
5ba11ab48fcf
ui: separate option to show prompt echo, enabled only in tests (issue4417)
Yuya Nishihara <yuya@tcha.org>
parents:
23036
diff
changeset
|
20 $ grep -v '^promptecho ' < $HGRCPATH >> $HGRCPATH.new |
5ba11ab48fcf
ui: separate option to show prompt echo, enabled only in tests (issue4417)
Yuya Nishihara <yuya@tcha.org>
parents:
23036
diff
changeset
|
21 $ mv $HGRCPATH.new $HGRCPATH |
5ba11ab48fcf
ui: separate option to show prompt echo, enabled only in tests (issue4417)
Yuya Nishihara <yuya@tcha.org>
parents:
23036
diff
changeset
|
22 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
23 $ hg init repo |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
24 $ cd repo |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
25 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
26 >>> from __future__ import absolute_import |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
27 >>> import os |
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
28 >>> import sys |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
29 >>> from hgclient import bprint, check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
30 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
31 ... def hellomessage(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
32 ... ch, data = readchannel(server) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
33 ... bprint(b'%c, %r' % (ch, data)) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
34 ... # run an arbitrary command to make sure the next thing the server |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
35 ... # sends isn't part of the hello message |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
36 ... runcommand(server, [b'id']) |
23036
19f5273c9f3e
cmdserver: include pid of server handling requests in hello message
Yuya Nishihara <yuya@tcha.org>
parents:
22994
diff
changeset
|
37 o, 'capabilities: getencoding runcommand\nencoding: *\npid: *' (glob) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
38 *** runcommand id |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
39 000000000000 tip |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
40 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
41 >>> from hgclient import check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
42 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
43 ... def unknowncommand(server): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
44 ... server.stdin.write(b'unknowncommand\n') |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
45 abort: unknown command unknowncommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
46 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
47 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
48 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
49 ... def checkruncommand(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
50 ... # hello block |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
51 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
52 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
53 ... # no args |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
54 ... runcommand(server, []) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
55 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
56 ... # global options |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
57 ... runcommand(server, [b'id', b'--quiet']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
58 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
59 ... # make sure global options don't stick through requests |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
60 ... runcommand(server, [b'id']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
61 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
62 ... # --config |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
63 ... runcommand(server, [b'id', b'--config', b'ui.quiet=True']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
64 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
65 ... # make sure --config doesn't stick |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
66 ... runcommand(server, [b'id']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
67 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
68 ... # negative return code should be masked |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
69 ... runcommand(server, [b'id', b'-runknown']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
70 *** runcommand |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
71 Mercurial Distributed SCM |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
72 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
73 basic commands: |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
74 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
75 add add the specified files on the next commit |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
76 annotate show changeset information by line for each file |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
77 clone make a copy of an existing repository |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
78 commit commit the specified files or all outstanding changes |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
79 diff diff repository (or selected files) |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
80 export dump the header and diffs for one or more changesets |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
81 forget forget the specified files on the next commit |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
82 init create a new repository in the given directory |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
83 log show revision history of entire repository or files |
23400
3bd577a3283e
merge: be precise about what merged into what in short desc
anatoly techtonik <techtonik@gmail.com>
parents:
23095
diff
changeset
|
84 merge merge another revision into working directory |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
85 pull pull changes from the specified source |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
86 push push changes to the specified destination |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
87 remove remove the specified files on the next commit |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
88 serve start stand-alone webserver |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
89 status show changed files in the working directory |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
90 summary summarize working directory state |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
91 update update working directory (or switch revisions) |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
92 |
29974
7109d5ddeb0c
help: use single quotes in use warning
timeless <timeless@mozdev.org>
parents:
29485
diff
changeset
|
93 (use 'hg help' for the full list of commands or 'hg -v' for details) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
94 *** runcommand id --quiet |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
95 000000000000 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
96 *** runcommand id |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
97 000000000000 tip |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
98 *** runcommand id --config ui.quiet=True |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
99 000000000000 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
100 *** runcommand id |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
101 000000000000 tip |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
102 *** runcommand id -runknown |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45827
diff
changeset
|
103 abort: unknown revision 'unknown' |
48118
5105a9975407
errors: raise InputError from revsingle() iff revset provided by the user
Martin von Zweigbergk <martinvonz@google.com>
parents:
47919
diff
changeset
|
104 [10] |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
105 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
106 >>> from hgclient import bprint, check, readchannel |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
107 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
108 ... def inputeof(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
109 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
110 ... server.stdin.write(b'runcommand\n') |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
111 ... # close stdin while server is waiting for input |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
112 ... server.stdin.close() |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
113 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
114 ... # server exits with 1 if the pipe closed while reading the command |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
115 ... bprint(b'server exit code =', b'%d' % server.wait()) |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
116 server exit code = 1 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
117 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
118 >>> from hgclient import check, readchannel, runcommand, stringio |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
119 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
120 ... def serverinput(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
121 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
122 ... |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
123 ... patch = b""" |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
124 ... # HG changeset patch |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
125 ... # User test |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
126 ... # Date 0 0 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
127 ... # Node ID c103a3dec114d882c98382d684d8af798d09d857 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
128 ... # Parent 0000000000000000000000000000000000000000 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
129 ... 1 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
130 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
131 ... diff -r 000000000000 -r c103a3dec114 a |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
132 ... --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
133 ... +++ b/a Thu Jan 01 00:00:00 1970 +0000 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
134 ... @@ -0,0 +1,1 @@ |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
135 ... +1 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
136 ... """ |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
137 ... |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
138 ... runcommand(server, [b'import', b'-'], input=stringio(patch)) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
139 ... runcommand(server, [b'log']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
140 *** runcommand import - |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
141 applying patch from stdin |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
142 *** runcommand log |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
143 changeset: 0:eff892de26ec |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
144 tag: tip |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
145 user: test |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
146 date: Thu Jan 01 00:00:00 1970 +0000 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
147 summary: 1 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
148 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
149 |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
150 check strict parsing of early options: |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
151 |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
152 >>> import os |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
153 >>> from hgclient import check, readchannel, runcommand |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
154 >>> os.environ['HGPLAIN'] = '+strictflags' |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
155 >>> @check |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
156 ... def cwd(server): |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
157 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
158 ... runcommand(server, [b'log', b'-b', b'--config=alias.log=!echo pwned', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
159 ... b'default']) |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
160 *** runcommand 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:
45827
diff
changeset
|
161 abort: unknown revision '--config=alias.log=!echo pwned' |
35170
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
162 [255] |
c9740b69b9b7
dispatch: add HGPLAIN=+strictflags to restrict early parsing of global options
Yuya Nishihara <yuya@tcha.org>
parents:
34942
diff
changeset
|
163 |
30262
bc5d0e6fd9f3
histedit: use ui.fin to read commands from stdin
Yuya Nishihara <yuya@tcha.org>
parents:
29974
diff
changeset
|
164 check that "histedit --commands=-" can read rules from the input channel: |
bc5d0e6fd9f3
histedit: use ui.fin to read commands from stdin
Yuya Nishihara <yuya@tcha.org>
parents:
29974
diff
changeset
|
165 |
40356
756e9b1084fd
py3: import StringIO from test utility to test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40355
diff
changeset
|
166 >>> from hgclient import check, readchannel, runcommand, stringio |
30262
bc5d0e6fd9f3
histedit: use ui.fin to read commands from stdin
Yuya Nishihara <yuya@tcha.org>
parents:
29974
diff
changeset
|
167 >>> @check |
bc5d0e6fd9f3
histedit: use ui.fin to read commands from stdin
Yuya Nishihara <yuya@tcha.org>
parents:
29974
diff
changeset
|
168 ... def serverinput(server): |
bc5d0e6fd9f3
histedit: use ui.fin to read commands from stdin
Yuya Nishihara <yuya@tcha.org>
parents:
29974
diff
changeset
|
169 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
170 ... rules = b'pick eff892de26ec\n' |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
171 ... runcommand(server, [b'histedit', b'0', b'--commands=-', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
172 ... b'--config', b'extensions.histedit='], |
40356
756e9b1084fd
py3: import StringIO from test utility to test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40355
diff
changeset
|
173 ... input=stringio(rules)) |
30262
bc5d0e6fd9f3
histedit: use ui.fin to read commands from stdin
Yuya Nishihara <yuya@tcha.org>
parents:
29974
diff
changeset
|
174 *** runcommand histedit 0 --commands=- --config extensions.histedit= |
bc5d0e6fd9f3
histedit: use ui.fin to read commands from stdin
Yuya Nishihara <yuya@tcha.org>
parents:
29974
diff
changeset
|
175 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
176 check that --cwd doesn't persist between requests: |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
177 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
178 $ mkdir foo |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
179 $ touch foo/bar |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
180 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
181 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
182 ... def cwd(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
183 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
184 ... runcommand(server, [b'--cwd', b'foo', b'st', b'bar']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
185 ... runcommand(server, [b'st', b'foo/bar']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
186 *** runcommand --cwd foo st bar |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
187 ? bar |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
188 *** runcommand st foo/bar |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
189 ? foo/bar |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
190 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
191 $ rm foo/bar |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
192 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
193 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
194 check that local configs for the cached repo aren't inherited when -R is used: |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
195 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
196 $ cat <<EOF >> .hg/hgrc |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
197 > [ui] |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
198 > foo = bar |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
199 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
200 |
37427
6282c1965f8e
tests: conditionalize test-commandserver.t based on extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37220
diff
changeset
|
201 #if no-extraextensions |
6282c1965f8e
tests: conditionalize test-commandserver.t based on extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37220
diff
changeset
|
202 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
203 >>> from hgclient import check, readchannel, runcommand, sep |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
204 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
205 ... def localhgrc(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
206 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
207 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
208 ... # the cached repo local hgrc contains ui.foo=bar, so showconfig should |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
209 ... # show it |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
210 ... runcommand(server, [b'showconfig'], outfilter=sep) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
211 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
212 ... # but not for this repo |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
213 ... runcommand(server, [b'init', b'foo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
214 ... runcommand(server, [b'-R', b'foo', b'showconfig', b'ui', b'defaults']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
215 *** runcommand showconfig |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
216 bundle.mainreporoot=$TESTTMP/repo |
47776
036b9b3cc79a
run-tests: use a small timeout for chg instance
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47587
diff
changeset
|
217 chgserver.idletimeout=60 |
25290
8f88f768e24c
devel: rename 'all' to 'all-warnings' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24751
diff
changeset
|
218 devel.all-warnings=true |
32410
f94d7e3e46a0
devel: activate default-date in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
32337
diff
changeset
|
219 devel.default-date=0 0 |
33426
29653495cece
tests: add extra output for fsmonitor at showconfig
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
220 extensions.fsmonitor= (fsmonitor !) |
48295
bf11ff22a9af
dirstate-v2: freeze the on-disk format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48255
diff
changeset
|
221 format.exp-rc-dirstate-v2=1 (dirstate-v2 !) |
23388
42ed0780ec4b
run-tests: set a default largefiles usercache in the default hgrc file
Matt Harbison <matt_harbison@yahoo.com>
parents:
23324
diff
changeset
|
222 largefiles.usercache=$TESTTMP/.cache/largefiles |
35280
8e72f9152c4d
lfs: introduce a user level cache for lfs files
Matt Harbison <matt_harbison@yahoo.com>
parents:
35170
diff
changeset
|
223 lfs.usercache=$TESTTMP/.cache/lfs |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
224 ui.slash=True |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
225 ui.interactive=False |
45826
21733e8c924f
errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
226 ui.detailed-exit-code=True |
40470
d6b6f1b441cf
run-tests: define the default merge tool through configuration
Boris Feld <boris.feld@octobus.net>
parents:
40362
diff
changeset
|
227 ui.merge=internal:merge |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
228 ui.mergemarkers=detailed |
47919
a28a7dcb9158
tests: setup dummyssh as the default ssh
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
47776
diff
changeset
|
229 ui.ssh=* (glob) |
46015
f44b9c72f061
run-tests: allow some slack about 'waiting on lock' message
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
45906
diff
changeset
|
230 ui.timeout.warn=15 |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
231 ui.foo=bar |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
232 ui.nontty=true |
31009
161ab32b44a1
runtests: set web.address to localhost
Jun Wu <quark@fb.com>
parents:
30986
diff
changeset
|
233 web.address=localhost |
31010 | 234 web\.ipv6=(?:True|False) (re) |
37009
5890e5872f36
hgweb: allow defining Server response header for HTTP server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
36426
diff
changeset
|
235 web.server-header=testing stub value |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
236 *** runcommand init foo |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
237 *** runcommand -R foo showconfig ui defaults |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
238 ui.slash=True |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
239 ui.interactive=False |
45826
21733e8c924f
errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
240 ui.detailed-exit-code=True |
40470
d6b6f1b441cf
run-tests: define the default merge tool through configuration
Boris Feld <boris.feld@octobus.net>
parents:
40362
diff
changeset
|
241 ui.merge=internal:merge |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
242 ui.mergemarkers=detailed |
47919
a28a7dcb9158
tests: setup dummyssh as the default ssh
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
47776
diff
changeset
|
243 ui.ssh=* (glob) |
46015
f44b9c72f061
run-tests: allow some slack about 'waiting on lock' message
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
45906
diff
changeset
|
244 ui.timeout.warn=15 |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
245 ui.nontty=true |
37427
6282c1965f8e
tests: conditionalize test-commandserver.t based on extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37220
diff
changeset
|
246 #endif |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
247 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
248 $ rm -R foo |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
249 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
250 #if windows |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
251 $ PYTHONPATH="$TESTTMP/repo;$PYTHONPATH" |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
252 #else |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
253 $ PYTHONPATH="$TESTTMP/repo:$PYTHONPATH" |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
254 #endif |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
255 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
256 $ cat <<EOF > hook.py |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
257 > import sys |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
258 > from hgclient import bprint |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
259 > def hook(**args): |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
260 > bprint(b'hook talking') |
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
261 > bprint(b'now try to read something: %r' % sys.stdin.read()) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
262 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
263 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
264 >>> from hgclient import check, readchannel, runcommand, stringio |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
265 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
266 ... def hookoutput(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
267 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
268 ... runcommand(server, [b'--config', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
269 ... b'hooks.pre-identify=python:hook.hook', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
270 ... b'id'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
271 ... input=stringio(b'some input')) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
272 *** runcommand --config hooks.pre-identify=python:hook.hook id |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
273 eff892de26ec tip |
37220
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
274 hook talking |
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
275 now try to read something: '' |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
276 |
33607
6c142f279625
pypy: fix failing test files with Pypy5.6.0
Boris Feld <boris.feld@octobus.net>
parents:
33542
diff
changeset
|
277 Clean hook cached version |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
278 $ rm hook.py* |
33607
6c142f279625
pypy: fix failing test files with Pypy5.6.0
Boris Feld <boris.feld@octobus.net>
parents:
33542
diff
changeset
|
279 $ rm -Rf __pycache__ |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
280 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
281 $ echo a >> a |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
282 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
283 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
284 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
285 ... def outsidechanges(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
286 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
287 ... runcommand(server, [b'status']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
288 ... os.system('hg ci -Am2') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
289 ... runcommand(server, [b'tip']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
290 ... runcommand(server, [b'status']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
291 *** runcommand status |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
292 M a |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
293 *** runcommand tip |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
294 changeset: 1:d3a0a68be6de |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
295 tag: tip |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
296 user: test |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
297 date: Thu Jan 01 00:00:00 1970 +0000 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
298 summary: 2 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
299 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
300 *** runcommand status |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
301 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
302 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
303 >>> from hgclient import bprint, check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
304 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
305 ... def bookmarks(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
306 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
307 ... runcommand(server, [b'bookmarks']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
308 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
309 ... # changes .hg/bookmarks |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
310 ... os.system('hg bookmark -i bm1') |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
311 ... os.system('hg bookmark -i bm2') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
312 ... runcommand(server, [b'bookmarks']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
313 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
314 ... # changes .hg/bookmarks.current |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
315 ... os.system('hg upd bm1 -q') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
316 ... runcommand(server, [b'bookmarks']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
317 ... |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
318 ... runcommand(server, [b'bookmarks', b'bm3']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
319 ... f = open('a', 'ab') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
320 ... f.write(b'a\n') and None |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
321 ... f.close() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
322 ... runcommand(server, [b'commit', b'-Amm']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
323 ... runcommand(server, [b'bookmarks']) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
324 ... bprint(b'') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
325 *** runcommand bookmarks |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
326 no bookmarks set |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
327 *** runcommand bookmarks |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
328 bm1 1:d3a0a68be6de |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
329 bm2 1:d3a0a68be6de |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
330 *** runcommand bookmarks |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
331 * bm1 1:d3a0a68be6de |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
332 bm2 1:d3a0a68be6de |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
333 *** runcommand bookmarks bm3 |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
334 *** runcommand commit -Amm |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
335 *** runcommand bookmarks |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
336 bm1 1:d3a0a68be6de |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
337 bm2 1:d3a0a68be6de |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
338 * bm3 2:aef17e88f5f0 |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
339 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
340 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
341 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
342 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
343 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
344 ... def tagscache(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
345 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
346 ... runcommand(server, [b'id', b'-t', b'-r', b'0']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
347 ... os.system('hg tag -r 0 foo') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
348 ... runcommand(server, [b'id', b'-t', b'-r', b'0']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
349 *** runcommand id -t -r 0 |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
350 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
351 *** runcommand id -t -r 0 |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
352 foo |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
353 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
354 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
355 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
356 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
357 ... def setphase(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
358 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
359 ... runcommand(server, [b'phase', b'-r', b'.']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
360 ... os.system('hg phase -r . -p') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
361 ... runcommand(server, [b'phase', b'-r', b'.']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
362 *** runcommand phase -r . |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
363 3: draft |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
364 *** runcommand phase -r . |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
365 3: public |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
366 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
367 $ echo a >> a |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
368 >>> from hgclient import bprint, check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
369 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
370 ... def rollback(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
371 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
372 ... runcommand(server, [b'phase', b'-r', b'.', b'-p']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
373 ... runcommand(server, [b'commit', b'-Am.']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
374 ... runcommand(server, [b'rollback']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
375 ... runcommand(server, [b'phase', b'-r', b'.']) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
376 ... bprint(b'') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
377 *** runcommand phase -r . -p |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
378 no phases changed |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
379 *** runcommand commit -Am. |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
380 *** runcommand rollback |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
381 repository tip rolled back to revision 3 (undo commit) |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
382 working directory now based on revision 3 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
383 *** runcommand phase -r . |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
384 3: public |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
385 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
386 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
387 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
388 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
389 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
390 ... def branch(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
391 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
392 ... runcommand(server, [b'branch']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
393 ... os.system('hg branch foo') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
394 ... runcommand(server, [b'branch']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
395 ... os.system('hg branch default') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
396 *** runcommand branch |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
397 default |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
398 marked working directory as branch foo |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
399 (branches are permanent and global, did you want a bookmark?) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
400 *** runcommand branch |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
401 foo |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
402 marked working directory as branch default |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
403 (branches are permanent and global, did you want a bookmark?) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
404 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
405 $ touch .hgignore |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
406 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
407 >>> from hgclient import bprint, check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
408 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
409 ... def hgignore(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
410 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
411 ... runcommand(server, [b'commit', b'-Am.']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
412 ... f = open('ignored-file', 'ab') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
413 ... f.write(b'') and None |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
414 ... f.close() |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
415 ... f = open('.hgignore', 'ab') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
416 ... f.write(b'ignored-file') |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
417 ... f.close() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
418 ... runcommand(server, [b'status', b'-i', b'-u']) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
419 ... bprint(b'') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
420 *** runcommand commit -Am. |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
421 adding .hgignore |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
422 *** runcommand status -i -u |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
423 I ignored-file |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
424 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
425 |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
426 cache of non-public revisions should be invalidated on repository change |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
427 (issue4855): |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
428 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
429 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
430 >>> from hgclient import bprint, check, readchannel, runcommand |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
431 >>> @check |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
432 ... def phasesetscacheaftercommit(server): |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
433 ... readchannel(server) |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
434 ... # load _phasecache._phaserevs and _phasesets |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
435 ... runcommand(server, [b'log', b'-qr', b'draft()']) |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
436 ... # create draft commits by another process |
36289
257071fd3357
py3: use range instead of xrange in tests/test-commandserver.t
Pulkit Goyal <7895pulkit@gmail.com>
parents:
35280
diff
changeset
|
437 ... for i in range(5, 7): |
26431
46984a5308a0
test-commandserver: generate files with a fixed EOL for test stability
Matt Harbison <matt_harbison@yahoo.com>
parents:
26409
diff
changeset
|
438 ... f = open('a', 'ab') |
46984a5308a0
test-commandserver: generate files with a fixed EOL for test stability
Matt Harbison <matt_harbison@yahoo.com>
parents:
26409
diff
changeset
|
439 ... f.seek(0, os.SEEK_END) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
440 ... f.write(b'a\n') and None |
26431
46984a5308a0
test-commandserver: generate files with a fixed EOL for test stability
Matt Harbison <matt_harbison@yahoo.com>
parents:
26409
diff
changeset
|
441 ... f.close() |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
442 ... os.system('hg commit -Aqm%d' % i) |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
443 ... # new commits should be listed as draft revisions |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
444 ... runcommand(server, [b'log', b'-qr', b'draft()']) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
445 ... bprint(b'') |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
446 *** runcommand log -qr draft() |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
447 4:7966c8e3734d |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
448 *** runcommand log -qr draft() |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
449 4:7966c8e3734d |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
450 5:41f6602d1c4f |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
451 6:10501e202c35 |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
452 |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
453 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
454 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
455 >>> from hgclient import bprint, check, readchannel, runcommand |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
456 >>> @check |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
457 ... def phasesetscacheafterstrip(server): |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
458 ... readchannel(server) |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
459 ... # load _phasecache._phaserevs and _phasesets |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
460 ... runcommand(server, [b'log', b'-qr', b'draft()']) |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
461 ... # strip cached revisions by another process |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
462 ... os.system('hg --config extensions.strip= strip -q 5') |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
463 ... # shouldn't abort by "unknown revision '6'" |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
464 ... runcommand(server, [b'log', b'-qr', b'draft()']) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
465 ... bprint(b'') |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
466 *** runcommand log -qr draft() |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
467 4:7966c8e3734d |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
468 5:41f6602d1c4f |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
469 6:10501e202c35 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
470 *** runcommand log -qr draft() |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
471 4:7966c8e3734d |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
472 |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
473 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
474 cache of phase roots should be invalidated on strip (issue3827): |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
475 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
476 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
477 >>> from hgclient import check, readchannel, runcommand, sep |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
478 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
479 ... def phasecacheafterstrip(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
480 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
481 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
482 ... # create new head, 5:731265503d86 |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
483 ... runcommand(server, [b'update', b'-C', b'0']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
484 ... f = open('a', 'ab') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
485 ... f.write(b'a\n') and None |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
486 ... f.close() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
487 ... runcommand(server, [b'commit', b'-Am.', b'a']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
488 ... runcommand(server, [b'log', b'-Gq']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
489 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
490 ... # make it public; draft marker moves to 4:7966c8e3734d |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
491 ... runcommand(server, [b'phase', b'-p', b'.']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
492 ... # load _phasecache.phaseroots |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
493 ... runcommand(server, [b'phase', b'.'], outfilter=sep) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
494 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
495 ... # strip 1::4 outside server |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
496 ... os.system('hg -q --config extensions.mq= strip 1') |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
497 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
498 ... # shouldn't raise "7966c8e3734d: no node!" |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
499 ... runcommand(server, [b'branches']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
500 *** runcommand update -C 0 |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
501 1 files updated, 0 files merged, 2 files removed, 0 files unresolved |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
502 (leaving bookmark bm3) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
503 *** runcommand commit -Am. a |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
504 created new head |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
505 *** runcommand log -Gq |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
506 @ 5:731265503d86 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
507 | |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
508 | o 4:7966c8e3734d |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
509 | | |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
510 | o 3:b9b85890c400 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
511 | | |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
512 | o 2:aef17e88f5f0 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
513 | | |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
514 | o 1:d3a0a68be6de |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
515 |/ |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
516 o 0:eff892de26ec |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
517 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
518 *** runcommand phase -p . |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
519 *** runcommand phase . |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
520 5: public |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
521 *** runcommand branches |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
522 default 1:731265503d86 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
523 |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
524 in-memory cache must be reloaded if transaction is aborted. otherwise |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
525 changelog and manifest would have invalid node: |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
526 |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
527 $ echo a >> a |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
528 >>> from hgclient import check, readchannel, runcommand |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
529 >>> @check |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
530 ... def txabort(server): |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
531 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
532 ... runcommand(server, [b'commit', b'--config', b'hooks.pretxncommit=false', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
533 ... b'-mfoo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
534 ... runcommand(server, [b'verify']) |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
535 *** runcommand commit --config hooks.pretxncommit=false -mfoo |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
536 transaction abort! |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
537 rollback completed |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
538 abort: pretxncommit hook exited with status 1 |
46417
768056549737
errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
46015
diff
changeset
|
539 [40] |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
540 *** runcommand verify |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
541 checking changesets |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
542 checking manifests |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
543 crosschecking files in changesets and manifests |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
544 checking files |
39489
f1186c292d03
verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents:
37427
diff
changeset
|
545 checked 2 changesets with 2 changes to 1 files |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
546 $ hg revert --no-backup -aq |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
547 |
22955
fab9dda0f2a3
obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents:
22783
diff
changeset
|
548 $ cat >> .hg/hgrc << EOF |
fab9dda0f2a3
obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents:
22783
diff
changeset
|
549 > [experimental] |
34866
1644623ab096
config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents:
34852
diff
changeset
|
550 > evolution.createmarkers=True |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
551 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
552 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
553 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
554 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
555 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
556 ... def obsolete(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
557 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
558 ... |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
559 ... runcommand(server, [b'up', b'null']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
560 ... runcommand(server, [b'phase', b'-df', b'tip']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
561 ... cmd = 'hg debugobsolete `hg log -r tip --template {node}`' |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
562 ... if os.name == 'nt': |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
563 ... cmd = 'sh -c "%s"' % cmd # run in sh, not cmd.exe |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
564 ... os.system(cmd) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
565 ... runcommand(server, [b'log', b'--hidden']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
566 ... runcommand(server, [b'log']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
567 *** runcommand up null |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
568 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
569 *** runcommand phase -df tip |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
42620
diff
changeset
|
570 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33426
diff
changeset
|
571 obsoleted 1 changesets |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
572 *** runcommand log --hidden |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
573 changeset: 1:731265503d86 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
574 tag: tip |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
575 user: test |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
576 date: Thu Jan 01 00:00:00 1970 +0000 |
34900
3a3adbcbd3a0
obsfate: rename obsfate into obsolete in changeset_printer
Boris Feld <boris.feld@octobus.net>
parents:
34866
diff
changeset
|
577 obsolete: pruned |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
578 summary: . |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
579 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
580 changeset: 0:eff892de26ec |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
581 bookmark: bm1 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
582 bookmark: bm2 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
583 bookmark: bm3 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
584 user: test |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
585 date: Thu Jan 01 00:00:00 1970 +0000 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
586 summary: 1 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
587 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
588 *** runcommand log |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
589 changeset: 0:eff892de26ec |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
590 bookmark: bm1 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
591 bookmark: bm2 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
592 bookmark: bm3 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
593 tag: tip |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
594 user: test |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
595 date: Thu Jan 01 00:00:00 1970 +0000 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
596 summary: 1 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
597 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
598 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
599 $ cat <<EOF >> .hg/hgrc |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
600 > [extensions] |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
601 > mq = |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
602 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
603 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
604 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
605 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
606 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
607 ... def mqoutsidechanges(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
608 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
609 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
610 ... # load repo.mq |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
611 ... runcommand(server, [b'qapplied']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
612 ... os.system('hg qnew 0.diff') |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
613 ... # repo.mq should be invalidated |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
614 ... runcommand(server, [b'qapplied']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
615 ... |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
616 ... runcommand(server, [b'qpop', b'--all']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
617 ... os.system('hg qqueue --create foo') |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
618 ... # repo.mq should be recreated to point to new queue |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
619 ... runcommand(server, [b'qqueue', b'--active']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
620 *** runcommand qapplied |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
621 *** runcommand qapplied |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
622 0.diff |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
623 *** runcommand qpop --all |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
624 popping 0.diff |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
625 patch queue now empty |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
626 *** runcommand qqueue --active |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
627 foo |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
628 |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
629 $ cat <<'EOF' > ../dbgui.py |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
630 > import os |
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
631 > import sys |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31010
diff
changeset
|
632 > from mercurial import commands, registrar |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
633 > cmdtable = {} |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31010
diff
changeset
|
634 > command = registrar.command(cmdtable) |
33097
fce4ed2912bb
py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32414
diff
changeset
|
635 > @command(b"debuggetpass", norepo=True) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
636 > def debuggetpass(ui): |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
637 > ui.write(b"%s\n" % ui.getpass()) |
33097
fce4ed2912bb
py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32414
diff
changeset
|
638 > @command(b"debugprompt", norepo=True) |
22783
524b786bd54f
ui: disable echo back of prompt input if ui is set to non-tty purposely
Yuya Nishihara <yuya@tcha.org>
parents:
22572
diff
changeset
|
639 > def debugprompt(ui): |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
640 > ui.write(b"%s\n" % ui.prompt(b"prompt:")) |
40592
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
641 > @command(b"debugpromptchoice", norepo=True) |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
642 > def debugpromptchoice(ui): |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
643 > msg = b"promptchoice (y/n)? $$ &Yes $$ &No" |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
644 > ui.write(b"%d\n" % ui.promptchoice(msg)) |
33097
fce4ed2912bb
py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32414
diff
changeset
|
645 > @command(b"debugreadstdin", norepo=True) |
23324
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
646 > def debugreadstdin(ui): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
647 > ui.write(b"read: %r\n" % sys.stdin.read(1)) |
33097
fce4ed2912bb
py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32414
diff
changeset
|
648 > @command(b"debugwritestdout", norepo=True) |
23324
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
649 > def debugwritestdout(ui): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
650 > os.write(1, b"low-level stdout fd and\n") |
37220
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
651 > sys.stdout.write("stdout should be redirected to stderr\n") |
23324
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
652 > sys.stdout.flush() |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
653 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
654 $ cat <<EOF >> .hg/hgrc |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
655 > [extensions] |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
656 > dbgui = ../dbgui.py |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
657 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
658 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
659 >>> from hgclient import check, readchannel, runcommand, stringio |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
660 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
661 ... def getpass(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
662 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
663 ... runcommand(server, [b'debuggetpass', b'--config', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
664 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
665 ... input=stringio(b'1234\n')) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
666 ... runcommand(server, [b'debuggetpass', b'--config', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
667 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
668 ... input=stringio(b'\n')) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
669 ... runcommand(server, [b'debuggetpass', b'--config', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
670 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
671 ... input=stringio(b'')) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
672 ... runcommand(server, [b'debugprompt', b'--config', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
673 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
674 ... input=stringio(b'5678\n')) |
44373
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
675 ... runcommand(server, [b'debugprompt', b'--config', |
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
676 ... b'ui.interactive=True'], |
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
677 ... input=stringio(b'\nremainder\nshould\nnot\nbe\nread\n')) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
678 ... runcommand(server, [b'debugreadstdin']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
679 ... runcommand(server, [b'debugwritestdout']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
680 *** runcommand debuggetpass --config ui.interactive=True |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
681 password: 1234 |
30814
b96c57c1f860
ui: check EOF of getpass() response read from command-server channel
Yuya Nishihara <yuya@tcha.org>
parents:
30363
diff
changeset
|
682 *** runcommand debuggetpass --config ui.interactive=True |
b96c57c1f860
ui: check EOF of getpass() response read from command-server channel
Yuya Nishihara <yuya@tcha.org>
parents:
30363
diff
changeset
|
683 password: |
b96c57c1f860
ui: check EOF of getpass() response read from command-server channel
Yuya Nishihara <yuya@tcha.org>
parents:
30363
diff
changeset
|
684 *** runcommand debuggetpass --config ui.interactive=True |
b96c57c1f860
ui: check EOF of getpass() response read from command-server channel
Yuya Nishihara <yuya@tcha.org>
parents:
30363
diff
changeset
|
685 password: abort: response expected |
b96c57c1f860
ui: check EOF of getpass() response read from command-server channel
Yuya Nishihara <yuya@tcha.org>
parents:
30363
diff
changeset
|
686 [255] |
22783
524b786bd54f
ui: disable echo back of prompt input if ui is set to non-tty purposely
Yuya Nishihara <yuya@tcha.org>
parents:
22572
diff
changeset
|
687 *** runcommand debugprompt --config ui.interactive=True |
524b786bd54f
ui: disable echo back of prompt input if ui is set to non-tty purposely
Yuya Nishihara <yuya@tcha.org>
parents:
22572
diff
changeset
|
688 prompt: 5678 |
44373
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
689 *** runcommand debugprompt --config ui.interactive=True |
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
690 prompt: y |
23324
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
691 *** runcommand debugreadstdin |
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
692 read: '' |
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
693 *** runcommand debugwritestdout |
37220
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
694 low-level stdout fd and |
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
695 stdout should be redirected to stderr |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
696 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
697 |
23322
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
698 run commandserver in commandserver, which is silly but should work: |
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
699 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
700 >>> from hgclient import bprint, check, readchannel, runcommand, stringio |
23322
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
701 >>> @check |
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
702 ... def nested(server): |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
703 ... bprint(b'%c, %r' % readchannel(server)) |
23322
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
704 ... class nestedserver(object): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
705 ... stdin = stringio(b'getencoding\n') |
28836
3f45488d70df
test-commandserver: handle cStringIO.StringIO/io.StringIO divergence
timeless <timeless@mozdev.org>
parents:
28511
diff
changeset
|
706 ... stdout = stringio() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
707 ... runcommand(server, [b'serve', b'--cmdserver', b'pipe'], |
23322
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
708 ... output=nestedserver.stdout, input=nestedserver.stdin) |
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
709 ... nestedserver.stdout.seek(0) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
710 ... bprint(b'%c, %r' % readchannel(nestedserver)) # hello |
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
711 ... bprint(b'%c, %r' % readchannel(nestedserver)) # getencoding |
23322
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
712 o, 'capabilities: getencoding runcommand\nencoding: *\npid: *' (glob) |
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
713 *** runcommand serve --cmdserver pipe |
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
714 o, 'capabilities: getencoding runcommand\nencoding: *\npid: *' (glob) |
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
715 r, '*' (glob) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
716 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
717 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
718 start without repository: |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
719 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
720 $ cd .. |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
721 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
722 >>> from hgclient import bprint, check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
723 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
724 ... def hellomessage(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
725 ... ch, data = readchannel(server) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
726 ... bprint(b'%c, %r' % (ch, data)) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
727 ... # run an arbitrary command to make sure the next thing the server |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
728 ... # sends isn't part of the hello message |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
729 ... runcommand(server, [b'id']) |
23036
19f5273c9f3e
cmdserver: include pid of server handling requests in hello message
Yuya Nishihara <yuya@tcha.org>
parents:
22994
diff
changeset
|
730 o, 'capabilities: getencoding runcommand\nencoding: *\npid: *' (glob) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
731 *** runcommand id |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
732 abort: there is no Mercurial repository here (.hg not found) |
45827
8d72e29ad1e0
errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents:
45826
diff
changeset
|
733 [10] |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
734 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
735 >>> from hgclient import check, readchannel, runcommand |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
736 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
737 ... def startwithoutrepo(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
738 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
739 ... runcommand(server, [b'init', b'repo2']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
740 ... runcommand(server, [b'id', b'-R', b'repo2']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
741 *** runcommand init repo2 |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
742 *** runcommand id -R repo2 |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
743 000000000000 tip |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
744 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
745 |
26142
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
746 don't fall back to cwd if invalid -R path is specified (issue4805): |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
747 |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
748 $ cd repo |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
749 $ hg serve --cmdserver pipe -R ../nonexistent |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45827
diff
changeset
|
750 abort: repository ../nonexistent not found |
26142
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
751 [255] |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
752 $ cd .. |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
753 |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
754 |
45057
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
755 #if no-windows |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
756 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
757 option to not shutdown on SIGINT: |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
758 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
759 $ cat <<'EOF' > dbgint.py |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
760 > import os |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
761 > import signal |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
762 > import time |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
763 > from mercurial import commands, registrar |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
764 > cmdtable = {} |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
765 > command = registrar.command(cmdtable) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
766 > @command(b"debugsleep", norepo=True) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
767 > def debugsleep(ui): |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
768 > time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
769 > @command(b"debugsuicide", norepo=True) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
770 > def debugsuicide(ui): |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
771 > os.kill(os.getpid(), signal.SIGINT) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
772 > time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
773 > EOF |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
774 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
775 >>> import signal |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
776 >>> import time |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
777 >>> from hgclient import checkwith, readchannel, runcommand |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
778 >>> @checkwith(extraargs=[b'--config', b'cmdserver.shutdown-on-interrupt=False', |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
779 ... b'--config', b'extensions.dbgint=dbgint.py']) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
780 ... def nointr(server): |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
781 ... readchannel(server) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
782 ... server.send_signal(signal.SIGINT) # server won't be terminated |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
783 ... time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
784 ... runcommand(server, [b'debugsleep']) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
785 ... server.send_signal(signal.SIGINT) # server won't be terminated |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
786 ... runcommand(server, [b'debugsleep']) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
787 ... runcommand(server, [b'debugsuicide']) # command can be interrupted |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
788 ... server.send_signal(signal.SIGTERM) # server will be terminated |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
789 ... time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
790 *** runcommand debugsleep |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
791 *** runcommand debugsleep |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
792 *** runcommand debugsuicide |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
793 interrupted! |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
794 killed! |
48255
8c34edb1ad10
backout: backed out changeset 6edc8800dbc3
Raphaël Gomès <rgomes@octobus.net>
parents:
48186
diff
changeset
|
795 [255] |
45057
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
796 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
797 #endif |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
798 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
799 |
40589
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
800 structured message channel: |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
801 |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
802 $ cat <<'EOF' >> repo2/.hg/hgrc |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
803 > [ui] |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
804 > # server --config should precede repository option |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
805 > message-output = stdio |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
806 > EOF |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
807 |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
808 >>> from hgclient import bprint, checkwith, readchannel, runcommand |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
809 >>> @checkwith(extraargs=[b'--config', b'ui.message-output=channel', |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
810 ... b'--config', b'cmdserver.message-encodings=foo cbor']) |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
811 ... def verify(server): |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
812 ... _ch, data = readchannel(server) |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
813 ... bprint(data) |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
814 ... runcommand(server, [b'-R', b'repo2', b'verify']) |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
815 capabilities: getencoding runcommand |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
816 encoding: ascii |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
817 message-encoding: cbor |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
818 pid: * (glob) |
40653
6d0fdeda43f7
tests: stabilize test-commandserver.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40594
diff
changeset
|
819 pgid: * (glob) (no-windows !) |
40589
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
820 *** runcommand -R repo2 verify |
40590
83dd8c63a0c6
ui: extract helpers to write message with type or label
Yuya Nishihara <yuya@tcha.org>
parents:
40589
diff
changeset
|
821 message: '\xa2DdataTchecking changesets\nDtypeFstatus' |
40594
234c2d8c9e48
commandserver: send raw progress information to message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40593
diff
changeset
|
822 message: '\xa6Ditem@Cpos\xf6EtopicHcheckingEtotal\xf6DtypeHprogressDunit@' |
40590
83dd8c63a0c6
ui: extract helpers to write message with type or label
Yuya Nishihara <yuya@tcha.org>
parents:
40589
diff
changeset
|
823 message: '\xa2DdataSchecking manifests\nDtypeFstatus' |
40594
234c2d8c9e48
commandserver: send raw progress information to message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40593
diff
changeset
|
824 message: '\xa6Ditem@Cpos\xf6EtopicHcheckingEtotal\xf6DtypeHprogressDunit@' |
40590
83dd8c63a0c6
ui: extract helpers to write message with type or label
Yuya Nishihara <yuya@tcha.org>
parents:
40589
diff
changeset
|
825 message: '\xa2DdataX0crosschecking files in changesets and manifests\nDtypeFstatus' |
40594
234c2d8c9e48
commandserver: send raw progress information to message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40593
diff
changeset
|
826 message: '\xa6Ditem@Cpos\xf6EtopicMcrosscheckingEtotal\xf6DtypeHprogressDunit@' |
40590
83dd8c63a0c6
ui: extract helpers to write message with type or label
Yuya Nishihara <yuya@tcha.org>
parents:
40589
diff
changeset
|
827 message: '\xa2DdataOchecking files\nDtypeFstatus' |
40594
234c2d8c9e48
commandserver: send raw progress information to message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40593
diff
changeset
|
828 message: '\xa6Ditem@Cpos\xf6EtopicHcheckingEtotal\xf6DtypeHprogressDunit@' |
40590
83dd8c63a0c6
ui: extract helpers to write message with type or label
Yuya Nishihara <yuya@tcha.org>
parents:
40589
diff
changeset
|
829 message: '\xa2DdataX/checked 0 changesets with 0 changes to 0 files\nDtypeFstatus' |
40589
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
830 |
40592
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
831 >>> from hgclient import checkwith, readchannel, runcommand, stringio |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
832 >>> @checkwith(extraargs=[b'--config', b'ui.message-output=channel', |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
833 ... b'--config', b'cmdserver.message-encodings=cbor', |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
834 ... b'--config', b'extensions.dbgui=dbgui.py']) |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
835 ... def prompt(server): |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
836 ... readchannel(server) |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
837 ... interactive = [b'--config', b'ui.interactive=True'] |
40593
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
838 ... runcommand(server, [b'debuggetpass'] + interactive, |
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
839 ... input=stringio(b'1234\n')) |
40592
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
840 ... runcommand(server, [b'debugprompt'] + interactive, |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
841 ... input=stringio(b'5678\n')) |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
842 ... runcommand(server, [b'debugpromptchoice'] + interactive, |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
843 ... input=stringio(b'n\n')) |
40593
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
844 *** runcommand debuggetpass --config ui.interactive=True |
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
845 message: '\xa3DdataJpassword: Hpassword\xf5DtypeFprompt' |
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
846 1234 |
40592
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
847 *** runcommand debugprompt --config ui.interactive=True |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
848 message: '\xa3DdataGprompt:GdefaultAyDtypeFprompt' |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
849 5678 |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
850 *** runcommand debugpromptchoice --config ui.interactive=True |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
851 message: '\xa4Gchoices\x82\x82AyCYes\x82AnBNoDdataTpromptchoice (y/n)? GdefaultAyDtypeFprompt' |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
852 1 |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
853 |
40589
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
854 bad message encoding: |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
855 |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
856 $ hg serve --cmdserver pipe --config ui.message-output=channel |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
857 abort: no supported message encodings: |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
858 [255] |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
859 $ hg serve --cmdserver pipe --config ui.message-output=channel \ |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
860 > --config cmdserver.message-encodings='foo bar' |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
861 abort: no supported message encodings: foo bar |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
862 [255] |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
863 |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
864 unix domain socket: |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
865 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
866 $ cd repo |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
867 $ hg update -q |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
868 |
23095
ac827031fe05
tests: don't try to test unix sockets on vfat
Matt Mackall <mpm@selenic.com>
parents:
23053
diff
changeset
|
869 #if unix-socket unix-permissions |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
870 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
871 >>> from hgclient import bprint, check, readchannel, runcommand, stringio, unixserver |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
872 >>> server = unixserver(b'.hg/server.sock', b'.hg/server.log') |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
873 >>> def hellomessage(conn): |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
874 ... ch, data = readchannel(conn) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
875 ... bprint(b'%c, %r' % (ch, data)) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
876 ... runcommand(conn, [b'id']) |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
877 >>> check(hellomessage, server.connect) |
23036
19f5273c9f3e
cmdserver: include pid of server handling requests in hello message
Yuya Nishihara <yuya@tcha.org>
parents:
22994
diff
changeset
|
878 o, 'capabilities: getencoding runcommand\nencoding: *\npid: *' (glob) |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
879 *** runcommand id |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
880 eff892de26ec tip bm1/bm2/bm3 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
881 >>> def unknowncommand(conn): |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
882 ... readchannel(conn) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
883 ... conn.stdin.write(b'unknowncommand\n') |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
884 >>> check(unknowncommand, server.connect) # error sent to server.log |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
885 >>> def serverinput(conn): |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
886 ... readchannel(conn) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
887 ... patch = b""" |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
888 ... # HG changeset patch |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
889 ... # User test |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
890 ... # Date 0 0 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
891 ... 2 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
892 ... |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
893 ... diff -r eff892de26ec -r 1ed24be7e7a0 a |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
894 ... --- a/a |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
895 ... +++ b/a |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
896 ... @@ -1,1 +1,2 @@ |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
897 ... 1 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
898 ... +2 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
899 ... """ |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
900 ... runcommand(conn, [b'import', b'-'], input=stringio(patch)) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
901 ... runcommand(conn, [b'log', b'-rtip', b'-q']) |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
902 >>> check(serverinput, server.connect) |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
903 *** runcommand import - |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
904 applying patch from stdin |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
905 *** runcommand log -rtip -q |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
906 2:1ed24be7e7a0 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
907 >>> server.shutdown() |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
908 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
909 $ cat .hg/server.log |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
910 listening at .hg/server.sock |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
911 abort: unknown command unknowncommand |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
912 killed! |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
913 $ rm .hg/server.log |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
914 |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
915 if server crashed before hello, traceback will be sent to 'e' channel as |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
916 last ditch: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
917 |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
918 $ cat <<'EOF' > ../earlycrasher.py |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
919 > from mercurial import commandserver, extensions |
40875
e7110f44ee2d
commandserver: pass around option to hook repo instance creation
Yuya Nishihara <yuya@tcha.org>
parents:
40822
diff
changeset
|
920 > def _serverequest(orig, ui, repo, conn, createcmdserver, prereposetups): |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
921 > def createcmdserver(*args, **kwargs): |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
922 > raise Exception('crash') |
40875
e7110f44ee2d
commandserver: pass around option to hook repo instance creation
Yuya Nishihara <yuya@tcha.org>
parents:
40822
diff
changeset
|
923 > return orig(ui, repo, conn, createcmdserver, prereposetups) |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
924 > def extsetup(ui): |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
925 > extensions.wrapfunction(commandserver, b'_serverequest', _serverequest) |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
926 > EOF |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
927 $ cat <<EOF >> .hg/hgrc |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
928 > [extensions] |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
929 > earlycrasher = ../earlycrasher.py |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
930 > EOF |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
931 >>> from hgclient import bprint, check, readchannel, unixserver |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
932 >>> server = unixserver(b'.hg/server.sock', b'.hg/server.log') |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
933 >>> def earlycrash(conn): |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
934 ... while True: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
935 ... try: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
936 ... ch, data = readchannel(conn) |
40361
b7de186efd82
py3: don't use traceback.print_exc() in commandserver.py
Yuya Nishihara <yuya@tcha.org>
parents:
40356
diff
changeset
|
937 ... for l in data.splitlines(True): |
b7de186efd82
py3: don't use traceback.print_exc() in commandserver.py
Yuya Nishihara <yuya@tcha.org>
parents:
40356
diff
changeset
|
938 ... if not l.startswith(b' '): |
b7de186efd82
py3: don't use traceback.print_exc() in commandserver.py
Yuya Nishihara <yuya@tcha.org>
parents:
40356
diff
changeset
|
939 ... bprint(b'%c, %r' % (ch, l)) |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
940 ... except EOFError: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
941 ... break |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
942 >>> check(earlycrash, server.connect) |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
943 e, 'Traceback (most recent call last):\n' |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
944 e, 'Exception: crash\n' |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
945 >>> server.shutdown() |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
946 |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
947 $ cat .hg/server.log | grep -v '^ ' |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
948 listening at .hg/server.sock |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
949 Traceback (most recent call last): |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
950 Exception: crash |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
951 killed! |
23095
ac827031fe05
tests: don't try to test unix sockets on vfat
Matt Mackall <mpm@selenic.com>
parents:
23053
diff
changeset
|
952 #endif |
ac827031fe05
tests: don't try to test unix sockets on vfat
Matt Mackall <mpm@selenic.com>
parents:
23053
diff
changeset
|
953 #if no-unix-socket |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
954 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
955 $ hg serve --cmdserver unix -a .hg/server.sock |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
956 abort: unsupported platform |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
957 [255] |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
958 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
959 #endif |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
960 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
961 $ cd .. |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
962 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
963 Test that accessing to invalid changelog cache is avoided at |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
964 subsequent operations even if repo object is reused even after failure |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
965 of transaction (see 0a7610758c42 also) |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
966 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
967 "hg log" after failure of transaction is needed to detect invalid |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
968 cache in repoview: this can't detect by "hg verify" only. |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
969 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
970 Combination of "finalization" and "empty-ness of changelog" (2 x 2 = |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
971 4) are tested, because '00changelog.i' are differently changed in each |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
972 cases. |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
973 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
974 $ cat > $TESTTMP/failafterfinalize.py <<EOF |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
975 > # extension to abort transaction after finalization forcibly |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
976 > from mercurial import commands, error, extensions, lock as lockmod |
34765
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
977 > from mercurial import registrar |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
978 > cmdtable = {} |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
979 > command = registrar.command(cmdtable) |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
980 > configtable = {} |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
981 > configitem = registrar.configitem(configtable) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
982 > configitem(b'failafterfinalize', b'fail', |
34765
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
983 > default=None, |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
984 > ) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
985 > def fail(tr): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
986 > raise error.Abort(b'fail after finalization') |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
987 > def reposetup(ui, repo): |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
988 > class failrepo(repo.__class__): |
42620
d98ec36be808
convert: add a config option to help doing identity hg->hg conversion
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
40875
diff
changeset
|
989 > def commitctx(self, ctx, error=False, origctx=None): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
990 > if self.ui.configbool(b'failafterfinalize', b'fail'): |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
991 > # 'sorted()' by ASCII code on category names causes |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
992 > # invoking 'fail' after finalization of changelog |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
993 > # using "'cl-%i' % id(self)" as category name |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
994 > self.currenttransaction().addfinalize(b'zzzzzzzz', fail) |
42620
d98ec36be808
convert: add a config option to help doing identity hg->hg conversion
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
40875
diff
changeset
|
995 > return super(failrepo, self).commitctx(ctx, error, origctx) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
996 > repo.__class__ = failrepo |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
997 > EOF |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
998 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
999 $ hg init repo3 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1000 $ cd repo3 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1001 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1002 $ cat <<EOF >> $HGRCPATH |
45765
ed84a4d48910
config: add a new [command-templates] section for templates defined by hg
Martin von Zweigbergk <martinvonz@google.com>
parents:
45057
diff
changeset
|
1003 > [command-templates] |
ed84a4d48910
config: add a new [command-templates] section for templates defined by hg
Martin von Zweigbergk <martinvonz@google.com>
parents:
45057
diff
changeset
|
1004 > log = {rev} {desc|firstline} ({files})\n |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1005 > |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1006 > [extensions] |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1007 > failafterfinalize = $TESTTMP/failafterfinalize.py |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1008 > EOF |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1009 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1010 - test failure with "empty changelog" |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1011 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1012 $ echo foo > foo |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1013 $ hg add foo |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1014 |
30332
318a24b52eeb
spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents:
30262
diff
changeset
|
1015 (failure before finalization) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1016 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1017 >>> from hgclient import check, readchannel, runcommand |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1018 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1019 ... def abort(server): |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1020 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1021 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1022 ... b'--config', b'hooks.pretxncommit=false', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1023 ... b'-mfoo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1024 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1025 ... runcommand(server, [b'verify', b'-q']) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1026 *** runcommand commit --config hooks.pretxncommit=false -mfoo |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1027 transaction abort! |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1028 rollback completed |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1029 abort: pretxncommit hook exited with status 1 |
46417
768056549737
errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
46015
diff
changeset
|
1030 [40] |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1031 *** runcommand log |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1032 *** runcommand verify -q |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1033 |
30332
318a24b52eeb
spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents:
30262
diff
changeset
|
1034 (failure after finalization) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1035 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1036 >>> from hgclient import check, readchannel, runcommand |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1037 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1038 ... def abort(server): |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1039 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1040 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1041 ... b'--config', b'failafterfinalize.fail=true', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1042 ... b'-mfoo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1043 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1044 ... runcommand(server, [b'verify', b'-q']) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1045 *** runcommand commit --config failafterfinalize.fail=true -mfoo |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1046 transaction abort! |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1047 rollback completed |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1048 abort: fail after finalization |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1049 [255] |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1050 *** runcommand log |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1051 *** runcommand verify -q |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1052 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1053 - test failure with "not-empty changelog" |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1054 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1055 $ echo bar > bar |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1056 $ hg add bar |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1057 $ hg commit -mbar bar |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1058 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1059 (failure before finalization) |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1060 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1061 >>> from hgclient import check, readchannel, runcommand |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1062 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1063 ... def abort(server): |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1064 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1065 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1066 ... b'--config', b'hooks.pretxncommit=false', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1067 ... b'-mfoo', b'foo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1068 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1069 ... runcommand(server, [b'verify', b'-q']) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1070 *** runcommand commit --config hooks.pretxncommit=false -mfoo foo |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1071 transaction abort! |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1072 rollback completed |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1073 abort: pretxncommit hook exited with status 1 |
46417
768056549737
errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
46015
diff
changeset
|
1074 [40] |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1075 *** runcommand log |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1076 0 bar (bar) |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1077 *** runcommand verify -q |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1078 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1079 (failure after finalization) |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1080 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1081 >>> from hgclient import check, readchannel, runcommand |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1082 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1083 ... def abort(server): |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1084 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1085 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1086 ... b'--config', b'failafterfinalize.fail=true', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1087 ... b'-mfoo', b'foo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1088 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1089 ... runcommand(server, [b'verify', b'-q']) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1090 *** runcommand commit --config failafterfinalize.fail=true -mfoo foo |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1091 transaction abort! |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1092 rollback completed |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1093 abort: fail after finalization |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1094 [255] |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1095 *** runcommand log |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1096 0 bar (bar) |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1097 *** runcommand verify -q |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1098 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1099 $ cd .. |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1100 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1101 Test symlink traversal over cached audited paths: |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1102 ------------------------------------------------- |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1103 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1104 #if symlink |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1105 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1106 set up symlink hell |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1107 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1108 $ mkdir merge-symlink-out |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1109 $ hg init merge-symlink |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1110 $ cd merge-symlink |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1111 $ touch base |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1112 $ hg commit -qAm base |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1113 $ ln -s ../merge-symlink-out a |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1114 $ hg commit -qAm 'symlink a -> ../merge-symlink-out' |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1115 $ hg up -q 0 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1116 $ mkdir a |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1117 $ touch a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1118 $ hg commit -qAm 'file a/poisoned' |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1119 $ hg log -G -T '{rev}: {desc}\n' |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1120 @ 2: file a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1121 | |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1122 | o 1: symlink a -> ../merge-symlink-out |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1123 |/ |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1124 o 0: base |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1125 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1126 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1127 try trivial merge after update: cache of audited paths should be discarded, |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1128 and the merge should fail (issue5628) |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1129 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1130 $ hg up -q null |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1131 >>> from hgclient import check, readchannel, runcommand |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1132 >>> @check |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1133 ... def merge(server): |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1134 ... readchannel(server) |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1135 ... # audit a/poisoned as a good path |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1136 ... runcommand(server, [b'up', b'-qC', b'2']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1137 ... runcommand(server, [b'up', b'-qC', b'1']) |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1138 ... # here a is a symlink, so a/poisoned is bad |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1139 ... runcommand(server, [b'merge', b'2']) |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1140 *** runcommand up -qC 2 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1141 *** runcommand up -qC 1 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1142 *** runcommand merge 2 |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34900
diff
changeset
|
1143 abort: path 'a/poisoned' traverses symbolic link 'a' |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34900
diff
changeset
|
1144 [255] |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1145 $ ls ../merge-symlink-out |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1146 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1147 cache of repo.auditor should be discarded, so matcher would never traverse |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1148 symlinks: |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1149 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1150 $ hg up -qC 0 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1151 $ touch ../merge-symlink-out/poisoned |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1152 >>> from hgclient import check, readchannel, runcommand |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1153 >>> @check |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1154 ... def files(server): |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1155 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1156 ... runcommand(server, [b'up', b'-qC', b'2']) |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1157 ... # audit a/poisoned as a good path |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1158 ... runcommand(server, [b'files', b'a/poisoned']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1159 ... runcommand(server, [b'up', b'-qC', b'0']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1160 ... runcommand(server, [b'up', b'-qC', b'1']) |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1161 ... # here 'a' is a symlink, so a/poisoned should be warned |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1162 ... runcommand(server, [b'files', b'a/poisoned']) |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1163 *** runcommand up -qC 2 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1164 *** runcommand files a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1165 a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1166 *** runcommand up -qC 0 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1167 *** runcommand up -qC 1 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1168 *** runcommand files a/poisoned |
33649
377e8ddaebef
pathauditor: disable cache of audited paths by default (issue5628)
Yuya Nishihara <yuya@tcha.org>
parents:
33648
diff
changeset
|
1169 abort: path 'a/poisoned' traverses symbolic link 'a' |
377e8ddaebef
pathauditor: disable cache of audited paths by default (issue5628)
Yuya Nishihara <yuya@tcha.org>
parents:
33648
diff
changeset
|
1170 [255] |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1171 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1172 $ cd .. |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1173 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1174 #endif |