Mercurial > hg
annotate tests/dummyssh @ 48137:25836b0029f5
dirstatemap: drop legacy method on the dirstatemap wrapper
They are no longer in use now that the Rust wrapper version of the Dirstatemap
are back in line with the Python one.
Differential Revision: https://phab.mercurial-scm.org/D11582
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sat, 02 Oct 2021 11:39:57 +0200 |
parents | fb8389f227a0 |
children | 6000f5b25c9b |
rev | line source |
---|---|
45830
c102b704edb5
global: use python3 in shebangs
Gregory Szorc <gregory.szorc@gmail.com>
parents:
36121
diff
changeset
|
1 #!/usr/bin/env python3 |
14186 | 2 |
29159
26d4ce8ca2bd
py3: make tests/dummyssh use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19320
diff
changeset
|
3 from __future__ import absolute_import |
26d4ce8ca2bd
py3: make tests/dummyssh use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19320
diff
changeset
|
4 |
26d4ce8ca2bd
py3: make tests/dummyssh use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19320
diff
changeset
|
5 import os |
47641
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
6 import shlex |
47640
119673fb37aa
dummyssh: use subprocess instead of os.call
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
45830
diff
changeset
|
7 import subprocess |
14186 | 8 import sys |
9 | |
10 os.chdir(os.getenv('TESTTMP')) | |
11 | |
12 if sys.argv[1] != "user@dummy": | |
13 sys.exit(-1) | |
14 | |
31007 | 15 os.environ["SSH_CLIENT"] = "%s 1 2" % os.environ.get('LOCALIP', '127.0.0.1') |
14186 | 16 |
17 log = open("dummylog", "ab") | |
35570
3e3f4c03876b
tests: add b'' to string literals where bytes are required
Pulkit Goyal <7895pulkit@gmail.com>
parents:
31007
diff
changeset
|
18 log.write(b"Got arguments") |
14186 | 19 for i, arg in enumerate(sys.argv[1:]): |
36121
3a763d7f40e1
py3: make dummyssh compatible with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35570
diff
changeset
|
20 log.write(b" %d:%s" % (i + 1, arg.encode('latin1'))) |
3a763d7f40e1
py3: make dummyssh compatible with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35570
diff
changeset
|
21 log.write(b"\n") |
14186 | 22 log.close() |
15768
cdf9c43445df
tests: make simple single quotes work with dummyssh on windows
Mads Kiilerich <mads@kiilerich.com>
parents:
14186
diff
changeset
|
23 hgcmd = sys.argv[2] |
cdf9c43445df
tests: make simple single quotes work with dummyssh on windows
Mads Kiilerich <mads@kiilerich.com>
parents:
14186
diff
changeset
|
24 if os.name == 'nt': |
cdf9c43445df
tests: make simple single quotes work with dummyssh on windows
Mads Kiilerich <mads@kiilerich.com>
parents:
14186
diff
changeset
|
25 # hack to make simple unix single quote quoting work on windows |
cdf9c43445df
tests: make simple single quotes work with dummyssh on windows
Mads Kiilerich <mads@kiilerich.com>
parents:
14186
diff
changeset
|
26 hgcmd = hgcmd.replace("'", '"') |
47641
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
27 cmds = shlex.split(hgcmd) |
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
28 if cmds[0].endswith('.py'): |
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
29 python_exe = os.environ['PYTHON'] |
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
30 cmds.insert(0, python_exe) |
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
31 hgcmd = shlex.join(cmds) |
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
32 # shlex generate windows incompatible string... |
5d9f89cd4984
dummyssh: call python script with python
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47640
diff
changeset
|
33 hgcmd = hgcmd.replace("'", '"') |
47774
fb8389f227a0
dummyssh: make sure we don't inherit files descriptor to the children
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47641
diff
changeset
|
34 r = subprocess.call(hgcmd, shell=True, close_fds=True) |
14186 | 35 sys.exit(bool(r)) |