Mercurial > hg
annotate tests/test-commandserver.t @ 47890:3853e6ee160d
dirstatemap: replace `removefile` by an explicit `entry.set_untracked()`
All the other caller goes through `reset_state`, so we can safely have an
explicit method on `DirstateItem` object.
This means that all the logic to preserve the previous state (from p2, merged,
etc) is now properly encapsulated within the DirstateItem. This pave the way to
using different storage for these information.
Differential Revision: https://phab.mercurial-scm.org/D11315
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Fri, 20 Aug 2021 11:27:01 +0200 |
parents | 036b9b3cc79a |
children | a28a7dcb9158 |
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' |
22567
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
104 [255] |
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 !) |
47279
40b51c28b242
dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents:
46417
diff
changeset
|
221 format.exp-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 |
46015
f44b9c72f061
run-tests: allow some slack about 'waiting on lock' message
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
45906
diff
changeset
|
229 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
|
230 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
|
231 ui.nontty=true |
31009
161ab32b44a1
runtests: set web.address to localhost
Jun Wu <quark@fb.com>
parents:
30986
diff
changeset
|
232 web.address=localhost |
31010 | 233 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
|
234 web.server-header=testing stub value |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
235 *** runcommand init foo |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
236 *** 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
|
237 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
|
238 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
|
239 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
|
240 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
|
241 ui.mergemarkers=detailed |
46015
f44b9c72f061
run-tests: allow some slack about 'waiting on lock' message
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
45906
diff
changeset
|
242 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
|
243 ui.nontty=true |
37427
6282c1965f8e
tests: conditionalize test-commandserver.t based on extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37220
diff
changeset
|
244 #endif |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
245 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
246 $ rm -R foo |
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 #if windows |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
249 $ PYTHONPATH="$TESTTMP/repo;$PYTHONPATH" |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
250 #else |
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 #endif |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
253 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
254 $ cat <<EOF > hook.py |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
255 > import sys |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
256 > from hgclient import bprint |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
257 > def hook(**args): |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
258 > bprint(b'hook talking') |
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
259 > 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
|
260 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
261 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
262 >>> 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
|
263 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
264 ... def hookoutput(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
265 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
266 ... runcommand(server, [b'--config', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
267 ... 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
|
268 ... b'id'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
269 ... input=stringio(b'some input')) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
270 *** 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
|
271 eff892de26ec tip |
37220
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
272 hook talking |
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
273 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
|
274 |
33607
6c142f279625
pypy: fix failing test files with Pypy5.6.0
Boris Feld <boris.feld@octobus.net>
parents:
33542
diff
changeset
|
275 Clean hook cached version |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
276 $ rm hook.py* |
33607
6c142f279625
pypy: fix failing test files with Pypy5.6.0
Boris Feld <boris.feld@octobus.net>
parents:
33542
diff
changeset
|
277 $ rm -Rf __pycache__ |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
278 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
279 $ echo a >> a |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
280 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
281 >>> 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
|
282 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
283 ... def outsidechanges(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
284 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
285 ... runcommand(server, [b'status']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
286 ... 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
|
287 ... runcommand(server, [b'tip']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
288 ... runcommand(server, [b'status']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
289 *** 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
|
290 M a |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
291 *** 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
|
292 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
|
293 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
|
294 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
|
295 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
|
296 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
|
297 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
298 *** runcommand status |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
299 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
300 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
301 >>> 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
|
302 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
303 ... def bookmarks(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
304 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
305 ... runcommand(server, [b'bookmarks']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
306 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
307 ... # changes .hg/bookmarks |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
308 ... 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
|
309 ... 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
|
310 ... runcommand(server, [b'bookmarks']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
311 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
312 ... # changes .hg/bookmarks.current |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
313 ... 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
|
314 ... runcommand(server, [b'bookmarks']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
315 ... |
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', b'bm3']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
317 ... f = open('a', 'ab') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
318 ... 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
|
319 ... f.close() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
320 ... 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
|
321 ... runcommand(server, [b'bookmarks']) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
322 ... bprint(b'') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
323 *** 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
|
324 no bookmarks set |
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 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
|
327 bm2 1:d3a0a68be6de |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
328 *** 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
|
329 * 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
|
330 bm2 1:d3a0a68be6de |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
331 *** runcommand bookmarks bm3 |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
332 *** runcommand commit -Amm |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
333 *** 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
|
334 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
|
335 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
|
336 * bm3 2:aef17e88f5f0 |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
337 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
338 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
339 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
340 >>> 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
|
341 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
342 ... def tagscache(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
343 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
344 ... 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
|
345 ... 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
|
346 ... 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
|
347 *** 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
|
348 |
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 foo |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
351 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
352 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
353 >>> 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
|
354 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
355 ... def setphase(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
356 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
357 ... 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
|
358 ... 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
|
359 ... runcommand(server, [b'phase', b'-r', b'.']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
360 *** 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
|
361 3: draft |
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: public |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
364 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
365 $ echo a >> a |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
366 >>> 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
|
367 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
368 ... def rollback(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
369 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
370 ... 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
|
371 ... 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
|
372 ... runcommand(server, [b'rollback']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
373 ... 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
|
374 ... bprint(b'') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
375 *** 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
|
376 no phases changed |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
377 *** runcommand commit -Am. |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
378 *** 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
|
379 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
|
380 working directory now based on revision 3 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
381 *** 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
|
382 3: public |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
383 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
384 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
385 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
386 >>> 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
|
387 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
388 ... def branch(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
389 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
390 ... runcommand(server, [b'branch']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
391 ... 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
|
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 default') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
394 *** 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
|
395 default |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
396 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
|
397 (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
|
398 *** 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
|
399 foo |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
400 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
|
401 (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
|
402 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
403 $ touch .hgignore |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
404 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
405 >>> 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
|
406 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
407 ... def hgignore(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
408 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
409 ... 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
|
410 ... 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
|
411 ... 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
|
412 ... f.close() |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
413 ... f = open('.hgignore', 'ab') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
414 ... 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
|
415 ... f.close() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
416 ... 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
|
417 ... bprint(b'') |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
418 *** 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
|
419 adding .hgignore |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
420 *** 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
|
421 I ignored-file |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
422 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
423 |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
424 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
|
425 (issue4855): |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
426 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
427 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
428 >>> 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
|
429 >>> @check |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
430 ... def phasesetscacheaftercommit(server): |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
431 ... readchannel(server) |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
432 ... # 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
|
433 ... 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
|
434 ... # 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
|
435 ... 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
|
436 ... 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
|
437 ... 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
|
438 ... 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
|
439 ... f.close() |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
440 ... 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
|
441 ... # 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
|
442 ... 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
|
443 ... bprint(b'') |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
444 *** runcommand log -qr draft() |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
445 4:7966c8e3734d |
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 5:41f6602d1c4f |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
449 6:10501e202c35 |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
450 |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
451 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
452 >>> import os |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
453 >>> 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
|
454 >>> @check |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
455 ... def phasesetscacheafterstrip(server): |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
456 ... readchannel(server) |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
457 ... # 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
|
458 ... 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
|
459 ... # strip cached revisions by another process |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
460 ... 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
|
461 ... # 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
|
462 ... 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
|
463 ... bprint(b'') |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
464 *** runcommand log -qr draft() |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
465 4:7966c8e3734d |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
466 5:41f6602d1c4f |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
467 6:10501e202c35 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
468 *** runcommand log -qr draft() |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
469 4:7966c8e3734d |
33921
a4c1333b2eda
tests: add blank output lines to test-commandserver
Augie Fackler <raf@durin42.com>
parents:
33773
diff
changeset
|
470 |
26405
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
471 |
c15d8f84343e
localrepo: recreate phasecache if changelog was modified (issue4855)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
472 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
|
473 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
474 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
475 >>> 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
|
476 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
477 ... def phasecacheafterstrip(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
478 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
479 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
480 ... # 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
|
481 ... 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
|
482 ... f = open('a', 'ab') |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
483 ... 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
|
484 ... f.close() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
485 ... 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
|
486 ... 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
|
487 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
488 ... # 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
|
489 ... 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
|
490 ... # load _phasecache.phaseroots |
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'.'], outfilter=sep) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
492 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
493 ... # strip 1::4 outside server |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
494 ... 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
|
495 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
496 ... # 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
|
497 ... runcommand(server, [b'branches']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
498 *** 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
|
499 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
|
500 (leaving bookmark bm3) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
501 *** 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
|
502 created new head |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
503 *** 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
|
504 @ 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
|
505 | |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
506 | 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
|
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 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
|
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 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
|
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 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
|
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 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
|
515 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
516 *** runcommand phase -p . |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
517 *** 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
|
518 5: public |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
519 *** 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
|
520 default 1:731265503d86 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
521 |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
522 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
|
523 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
|
524 |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
525 $ echo a >> a |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
526 >>> 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
|
527 >>> @check |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
528 ... def txabort(server): |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
529 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
530 ... 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
|
531 ... b'-mfoo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
532 ... runcommand(server, [b'verify']) |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
533 *** 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
|
534 transaction abort! |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
535 rollback completed |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
536 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
|
537 [40] |
26251
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
538 *** runcommand verify |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
539 checking changesets |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
540 checking manifests |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
541 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
|
542 checking files |
39489
f1186c292d03
verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents:
37427
diff
changeset
|
543 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
|
544 $ hg revert --no-backup -aq |
5c0f5db65c6b
localrepo: refresh filecache stats only if transaction finished successfully
Yuya Nishihara <yuya@tcha.org>
parents:
26142
diff
changeset
|
545 |
22955
fab9dda0f2a3
obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents:
22783
diff
changeset
|
546 $ cat >> .hg/hgrc << EOF |
fab9dda0f2a3
obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents:
22783
diff
changeset
|
547 > [experimental] |
34866
1644623ab096
config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents:
34852
diff
changeset
|
548 > evolution.createmarkers=True |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
549 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
550 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
551 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
552 >>> 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
|
553 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
554 ... def obsolete(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
555 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
556 ... |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
557 ... 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
|
558 ... 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
|
559 ... 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
|
560 ... if os.name == 'nt': |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
561 ... 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
|
562 ... os.system(cmd) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
563 ... 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
|
564 ... runcommand(server, [b'log']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
565 *** 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
|
566 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
|
567 *** 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
|
568 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33426
diff
changeset
|
569 obsoleted 1 changesets |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
570 *** 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
|
571 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
|
572 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
|
573 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
|
574 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
|
575 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
|
576 summary: . |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
577 |
f9a4a035003d
test-commandserver: add stub for .t test by copying .out with 2-space indent
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
578 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
|
579 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
|
580 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
|
581 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
|
582 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
|
583 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
|
584 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
|
585 |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
586 *** 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
|
587 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
|
588 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
|
589 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
|
590 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
|
591 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
|
592 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
|
593 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
|
594 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
|
595 |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
596 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
597 $ cat <<EOF >> .hg/hgrc |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
598 > [extensions] |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
599 > mq = |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
600 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
601 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
602 >>> import os |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
603 >>> 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
|
604 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
605 ... def mqoutsidechanges(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
606 ... readchannel(server) |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
607 ... |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
608 ... # load repo.mq |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
609 ... runcommand(server, [b'qapplied']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
610 ... 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
|
611 ... # 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
|
612 ... runcommand(server, [b'qapplied']) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
613 ... |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
614 ... 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
|
615 ... 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
|
616 ... # 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
|
617 ... runcommand(server, [b'qqueue', b'--active']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
618 *** runcommand qapplied |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
619 *** 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
|
620 0.diff |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
621 *** 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
|
622 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
|
623 patch queue now empty |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
624 *** 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
|
625 foo |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
626 |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
627 $ cat <<'EOF' > ../dbgui.py |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
628 > import os |
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
629 > import sys |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31010
diff
changeset
|
630 > 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
|
631 > cmdtable = {} |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
31010
diff
changeset
|
632 > command = registrar.command(cmdtable) |
33097
fce4ed2912bb
py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32414
diff
changeset
|
633 > @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
|
634 > def debuggetpass(ui): |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
635 > 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
|
636 > @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
|
637 > def debugprompt(ui): |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
638 > 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
|
639 > @command(b"debugpromptchoice", norepo=True) |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
640 > def debugpromptchoice(ui): |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
641 > 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
|
642 > 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
|
643 > @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
|
644 > def debugreadstdin(ui): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
645 > 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
|
646 > @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
|
647 > def debugwritestdout(ui): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
648 > 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
|
649 > 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
|
650 > sys.stdout.flush() |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
651 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
652 $ cat <<EOF >> .hg/hgrc |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
653 > [extensions] |
40591
c49283e740da
test-commandserver: clean up quoting and location of dbgui extension
Yuya Nishihara <yuya@tcha.org>
parents:
40590
diff
changeset
|
654 > dbgui = ../dbgui.py |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
655 > EOF |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
656 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
657 >>> 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
|
658 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
659 ... def getpass(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
660 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
661 ... 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
|
662 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
663 ... input=stringio(b'1234\n')) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
664 ... 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
|
665 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
666 ... input=stringio(b'\n')) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
667 ... 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
|
668 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
669 ... input=stringio(b'')) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
670 ... 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
|
671 ... b'ui.interactive=True'], |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
672 ... input=stringio(b'5678\n')) |
44373
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
673 ... runcommand(server, [b'debugprompt', b'--config', |
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
674 ... b'ui.interactive=True'], |
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
675 ... 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
|
676 ... runcommand(server, [b'debugreadstdin']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
677 ... runcommand(server, [b'debugwritestdout']) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
678 *** 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
|
679 password: 1234 |
30814
b96c57c1f860
ui: check EOF of getpass() response read from command-server channel
Yuya Nishihara <yuya@tcha.org>
parents:
30363
diff
changeset
|
680 *** 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
|
681 password: |
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: abort: response expected |
b96c57c1f860
ui: check EOF of getpass() response read from command-server channel
Yuya Nishihara <yuya@tcha.org>
parents:
30363
diff
changeset
|
684 [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
|
685 *** 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
|
686 prompt: 5678 |
44373
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
687 *** runcommand debugprompt --config ui.interactive=True |
98c14f0108b8
py3: fix EOL detection in commandserver.channeledinput
Yuya Nishihara <yuya@tcha.org>
parents:
42893
diff
changeset
|
688 prompt: y |
23324
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
689 *** runcommand debugreadstdin |
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
690 read: '' |
69f86b937035
cmdserver: protect pipe server streams against corruption caused by direct io
Yuya Nishihara <yuya@tcha.org>
parents:
23322
diff
changeset
|
691 *** runcommand debugwritestdout |
37220
7f78de1c93aa
procutil: redirect ui.fout to stderr while stdio is protected
Yuya Nishihara <yuya@tcha.org>
parents:
37009
diff
changeset
|
692 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
|
693 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
|
694 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
695 |
23322
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
696 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
|
697 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
698 >>> 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
|
699 >>> @check |
000cfc8b3913
cmdserver: use given streams as pipe channels like other commands
Yuya Nishihara <yuya@tcha.org>
parents:
23095
diff
changeset
|
700 ... def nested(server): |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
701 ... 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
|
702 ... class nestedserver(object): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
703 ... stdin = stringio(b'getencoding\n') |
28836
3f45488d70df
test-commandserver: handle cStringIO.StringIO/io.StringIO divergence
timeless <timeless@mozdev.org>
parents:
28511
diff
changeset
|
704 ... stdout = stringio() |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
705 ... 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
|
706 ... 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
|
707 ... nestedserver.stdout.seek(0) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
708 ... 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
|
709 ... 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
|
710 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
|
711 *** runcommand serve --cmdserver pipe |
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 r, '*' (glob) |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
714 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
715 |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
716 start without repository: |
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 $ cd .. |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
719 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
720 >>> 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
|
721 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
722 ... def hellomessage(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
723 ... ch, data = readchannel(server) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
724 ... 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
|
725 ... # 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
|
726 ... # 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
|
727 ... 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
|
728 o, 'capabilities: getencoding runcommand\nencoding: *\npid: *' (glob) |
22572
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
729 *** 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
|
730 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
|
731 [10] |
22568
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
732 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
733 >>> 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
|
734 >>> @check |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
735 ... def startwithoutrepo(server): |
78b99149ed8a
test-commandserver: port test functions from .py to .t
Yuya Nishihara <yuya@tcha.org>
parents:
22567
diff
changeset
|
736 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
737 ... 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
|
738 ... 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
|
739 *** runcommand init repo2 |
cc3d9f776632
test-commandserver: make runcommand message bolder
Yuya Nishihara <yuya@tcha.org>
parents:
22571
diff
changeset
|
740 *** 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
|
741 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
|
742 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
743 |
26142
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
744 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
|
745 |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
746 $ cd repo |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
747 $ 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
|
748 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
|
749 [255] |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
750 $ cd .. |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
751 |
7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Yuya Nishihara <yuya@tcha.org>
parents:
25290
diff
changeset
|
752 |
45057
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
753 #if no-windows |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
754 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
755 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
|
756 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
757 $ 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
|
758 > import os |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
759 > import signal |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
760 > import time |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
761 > 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
|
762 > cmdtable = {} |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
763 > 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
|
764 > @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
|
765 > def debugsleep(ui): |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
766 > time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
767 > @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
|
768 > def debugsuicide(ui): |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
769 > 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
|
770 > time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
771 > EOF |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
772 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
773 >>> import signal |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
774 >>> import time |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
775 >>> 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
|
776 >>> @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
|
777 ... 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
|
778 ... def nointr(server): |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
779 ... readchannel(server) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
780 ... 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
|
781 ... time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
782 ... 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
|
783 ... 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
|
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 ... 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
|
786 ... 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
|
787 ... time.sleep(1) |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
788 *** runcommand debugsleep |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
789 *** runcommand debugsleep |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
790 *** runcommand debugsuicide |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
791 interrupted! |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
792 killed! |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
793 [255] |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
794 |
d6e99a446eea
cmdserver: add option to not exit from message loop on SIGINT
Yuya Nishihara <yuya@tcha.org>
parents:
44373
diff
changeset
|
795 #endif |
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 |
40589
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
798 structured message channel: |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
799 |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
800 $ cat <<'EOF' >> repo2/.hg/hgrc |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
801 > [ui] |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
802 > # 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
|
803 > message-output = stdio |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
804 > EOF |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
805 |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
806 >>> 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
|
807 >>> @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
|
808 ... 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
|
809 ... def verify(server): |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
810 ... _ch, data = readchannel(server) |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
811 ... bprint(data) |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
812 ... 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
|
813 capabilities: getencoding runcommand |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
814 encoding: ascii |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
815 message-encoding: cbor |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
816 pid: * (glob) |
40653
6d0fdeda43f7
tests: stabilize test-commandserver.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40594
diff
changeset
|
817 pgid: * (glob) (no-windows !) |
40589
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
818 *** 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
|
819 message: '\xa2DdataTchecking changesets\nDtypeFstatus' |
40594
234c2d8c9e48
commandserver: send raw progress information to message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40593
diff
changeset
|
820 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
|
821 message: '\xa2DdataSchecking manifests\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: '\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
|
824 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
|
825 message: '\xa2DdataOchecking files\nDtypeFstatus' |
40594
234c2d8c9e48
commandserver: send raw progress information to message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40593
diff
changeset
|
826 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
|
827 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
|
828 |
40592
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
829 >>> 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
|
830 >>> @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
|
831 ... 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
|
832 ... 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
|
833 ... def prompt(server): |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
834 ... readchannel(server) |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
835 ... 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
|
836 ... runcommand(server, [b'debuggetpass'] + interactive, |
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
837 ... input=stringio(b'1234\n')) |
40592
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
838 ... runcommand(server, [b'debugprompt'] + interactive, |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
839 ... input=stringio(b'5678\n')) |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
840 ... runcommand(server, [b'debugpromptchoice'] + interactive, |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
841 ... input=stringio(b'n\n')) |
40593
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
842 *** runcommand debuggetpass --config ui.interactive=True |
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
843 message: '\xa3DdataJpassword: Hpassword\xf5DtypeFprompt' |
6f0941f4a184
commandserver: make getpass() request distinct from normal prompt
Yuya Nishihara <yuya@tcha.org>
parents:
40592
diff
changeset
|
844 1234 |
40592
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
845 *** runcommand debugprompt --config ui.interactive=True |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
846 message: '\xa3DdataGprompt:GdefaultAyDtypeFprompt' |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
847 5678 |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
848 *** runcommand debugpromptchoice --config ui.interactive=True |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
849 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
|
850 1 |
83e571ea06a9
commandserver: attach prompt default and choices to message
Yuya Nishihara <yuya@tcha.org>
parents:
40591
diff
changeset
|
851 |
40589
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
852 bad message encoding: |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
853 |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
854 $ 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
|
855 abort: no supported message encodings: |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
856 [255] |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
857 $ 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
|
858 > --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
|
859 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
|
860 [255] |
054d0fcba2c4
commandserver: add experimental option to use separate message channel
Yuya Nishihara <yuya@tcha.org>
parents:
40470
diff
changeset
|
861 |
22994
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
862 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
|
863 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
864 $ cd repo |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
865 $ 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
|
866 |
23095
ac827031fe05
tests: don't try to test unix sockets on vfat
Matt Mackall <mpm@selenic.com>
parents:
23053
diff
changeset
|
867 #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
|
868 |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
869 >>> 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
|
870 >>> 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
|
871 >>> 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
|
872 ... ch, data = readchannel(conn) |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
873 ... 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
|
874 ... 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
|
875 >>> 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
|
876 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
|
877 *** runcommand id |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
878 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
|
879 >>> 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
|
880 ... readchannel(conn) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
881 ... 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
|
882 >>> 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
|
883 >>> 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
|
884 ... readchannel(conn) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
885 ... 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
|
886 ... # 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
|
887 ... # User test |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
888 ... # 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
|
889 ... 2 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
890 ... |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
891 ... 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
|
892 ... --- a/a |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
893 ... +++ b/a |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
894 ... @@ -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
|
895 ... 1 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
896 ... +2 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
897 ... """ |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
898 ... 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
|
899 ... 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
|
900 >>> 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
|
901 *** runcommand import - |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
902 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
|
903 *** 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
|
904 2:1ed24be7e7a0 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
905 >>> server.shutdown() |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
906 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
907 $ 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
|
908 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
|
909 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
|
910 killed! |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
911 $ rm .hg/server.log |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
912 |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
913 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
|
914 last ditch: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
915 |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
916 $ cat <<'EOF' > ../earlycrasher.py |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
917 > 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
|
918 > 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
|
919 > def createcmdserver(*args, **kwargs): |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
920 > raise Exception('crash') |
40875
e7110f44ee2d
commandserver: pass around option to hook repo instance creation
Yuya Nishihara <yuya@tcha.org>
parents:
40822
diff
changeset
|
921 > 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
|
922 > def extsetup(ui): |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
923 > extensions.wrapfunction(commandserver, b'_serverequest', _serverequest) |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
924 > EOF |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
925 $ cat <<EOF >> .hg/hgrc |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
926 > [extensions] |
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
927 > earlycrasher = ../earlycrasher.py |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
928 > EOF |
40355
77ab5fbdbbf0
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
40354
diff
changeset
|
929 >>> 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
|
930 >>> 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
|
931 >>> def earlycrash(conn): |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
932 ... while True: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
933 ... try: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
934 ... 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
|
935 ... 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
|
936 ... 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
|
937 ... 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
|
938 ... except EOFError: |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
939 ... break |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
940 >>> check(earlycrash, server.connect) |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
941 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
|
942 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
|
943 >>> server.shutdown() |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
944 |
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
945 $ 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
|
946 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
|
947 Traceback (most recent call last): |
40822
6a75363f834a
test-commandserver: change way of triggering early crash
Yuya Nishihara <yuya@tcha.org>
parents:
40653
diff
changeset
|
948 Exception: crash |
28511
ff5f923fca3c
cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org>
parents:
28265
diff
changeset
|
949 killed! |
23095
ac827031fe05
tests: don't try to test unix sockets on vfat
Matt Mackall <mpm@selenic.com>
parents:
23053
diff
changeset
|
950 #endif |
ac827031fe05
tests: don't try to test unix sockets on vfat
Matt Mackall <mpm@selenic.com>
parents:
23053
diff
changeset
|
951 #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
|
952 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
953 $ 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
|
954 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
|
955 [255] |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
956 |
840be5ca03e1
cmdserver: add service that listens on unix domain socket and forks process
Yuya Nishihara <yuya@tcha.org>
parents:
22955
diff
changeset
|
957 #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
|
958 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
959 $ cd .. |
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 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
|
962 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
|
963 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
|
964 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
965 "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
|
966 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
|
967 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
968 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
|
969 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
|
970 cases. |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
971 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
972 $ 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
|
973 > # 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
|
974 > 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
|
975 > from mercurial import registrar |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
976 > cmdtable = {} |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
977 > command = registrar.command(cmdtable) |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
978 > configtable = {} |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
979 > configitem = registrar.configitem(configtable) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
980 > configitem(b'failafterfinalize', b'fail', |
34765
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
981 > default=None, |
f3e4a5ad0d90
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net>
parents:
34555
diff
changeset
|
982 > ) |
28265
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
983 > def fail(tr): |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
984 > 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
|
985 > 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
|
986 > 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
|
987 > 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
|
988 > 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
|
989 > # '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
|
990 > # 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
|
991 > # 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
|
992 > 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
|
993 > 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
|
994 > 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
|
995 > EOF |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
996 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
997 $ 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
|
998 $ 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
|
999 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1000 $ 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
|
1001 > [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
|
1002 > 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
|
1003 > |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1004 > [extensions] |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1005 > 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
|
1006 > EOF |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1007 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1008 - 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
|
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 $ 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
|
1011 $ 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
|
1012 |
30332
318a24b52eeb
spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents:
30262
diff
changeset
|
1013 (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
|
1014 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1015 >>> 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
|
1016 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1017 ... 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
|
1018 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1019 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1020 ... 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
|
1021 ... b'-mfoo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1022 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1023 ... 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
|
1024 *** 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
|
1025 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
|
1026 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
|
1027 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
|
1028 [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
|
1029 *** 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
|
1030 *** 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
|
1031 |
30332
318a24b52eeb
spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents:
30262
diff
changeset
|
1032 (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
|
1033 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1034 >>> 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
|
1035 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1036 ... 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
|
1037 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1038 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1039 ... 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
|
1040 ... b'-mfoo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1041 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1042 ... 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
|
1043 *** 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
|
1044 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
|
1045 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
|
1046 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
|
1047 [255] |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1048 *** 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
|
1049 *** 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
|
1050 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1051 - 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
|
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 $ 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
|
1054 $ 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
|
1055 $ 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
|
1056 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1057 (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
|
1058 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1059 >>> 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
|
1060 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1061 ... 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
|
1062 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1063 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1064 ... 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
|
1065 ... b'-mfoo', b'foo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1066 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1067 ... 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
|
1068 *** 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
|
1069 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
|
1070 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
|
1071 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
|
1072 [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
|
1073 *** 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
|
1074 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
|
1075 *** 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
|
1076 |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1077 (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
|
1078 |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1079 >>> 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
|
1080 >>> @check |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1081 ... 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
|
1082 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1083 ... runcommand(server, [b'commit', |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1084 ... 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
|
1085 ... b'-mfoo', b'foo']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1086 ... runcommand(server, [b'log']) |
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1087 ... 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
|
1088 *** 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
|
1089 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
|
1090 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
|
1091 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
|
1092 [255] |
332926212ef8
repoview: discard filtered changelog if index isn't shared with unfiltered
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
26431
diff
changeset
|
1093 *** 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
|
1094 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
|
1095 *** runcommand verify -q |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1096 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1097 $ cd .. |
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 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
|
1100 ------------------------------------------------- |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1101 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1102 #if symlink |
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 set up symlink hell |
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 $ mkdir merge-symlink-out |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1107 $ hg init merge-symlink |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1108 $ cd merge-symlink |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1109 $ touch base |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1110 $ hg commit -qAm base |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1111 $ 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
|
1112 $ 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
|
1113 $ hg up -q 0 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1114 $ mkdir a |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1115 $ touch a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1116 $ 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
|
1117 $ 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
|
1118 @ 2: file a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1119 | |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1120 | 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
|
1121 |/ |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1122 o 0: base |
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 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1125 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
|
1126 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
|
1127 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1128 $ hg up -q null |
33922
1a6707b43d05
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33921
diff
changeset
|
1129 >>> 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
|
1130 >>> @check |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1131 ... def merge(server): |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1132 ... readchannel(server) |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1133 ... # 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
|
1134 ... 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
|
1135 ... 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
|
1136 ... # 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
|
1137 ... 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
|
1138 *** runcommand up -qC 2 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1139 *** runcommand up -qC 1 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1140 *** runcommand merge 2 |
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34900
diff
changeset
|
1141 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
|
1142 [255] |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1143 $ ls ../merge-symlink-out |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1144 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1145 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
|
1146 symlinks: |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1147 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1148 $ hg up -qC 0 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1149 $ 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
|
1150 >>> 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
|
1151 >>> @check |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1152 ... def files(server): |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1153 ... readchannel(server) |
40354
f9f2faf25fc4
py3: byte-stringify most literals in test-commandserver.t
Yuya Nishihara <yuya@tcha.org>
parents:
39951
diff
changeset
|
1154 ... 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
|
1155 ... # 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
|
1156 ... 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
|
1157 ... 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
|
1158 ... 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
|
1159 ... # 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
|
1160 ... 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
|
1161 *** runcommand up -qC 2 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1162 *** runcommand files a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1163 a/poisoned |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1164 *** runcommand up -qC 0 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1165 *** runcommand up -qC 1 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1166 *** runcommand files a/poisoned |
33649
377e8ddaebef
pathauditor: disable cache of audited paths by default (issue5628)
Yuya Nishihara <yuya@tcha.org>
parents:
33648
diff
changeset
|
1167 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
|
1168 [255] |
33648
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1169 |
47ea28293d30
tests: show cache of audited paths is never invalidated
Yuya Nishihara <yuya@tcha.org>
parents:
33607
diff
changeset
|
1170 $ cd .. |
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 #endif |