Mercurial > hg
view tests/dummyssh @ 47807:bc74cb9a8e40 stable
pager: account for flakiness in Windows output
This test case is cursed and probably not worth losing more time over. This
makes apparent what the intended behavior is while still removing the flakiness
from the CI.
Differential Revision: https://phab.mercurial-scm.org/D11257
author | Raphaël Gomès <rgomes@octobus.net> |
---|---|
date | Thu, 05 Aug 2021 18:25:35 +0200 |
parents | fb8389f227a0 |
children | 6000f5b25c9b |
line wrap: on
line source
#!/usr/bin/env python3 from __future__ import absolute_import import os import shlex import subprocess import sys os.chdir(os.getenv('TESTTMP')) if sys.argv[1] != "user@dummy": sys.exit(-1) os.environ["SSH_CLIENT"] = "%s 1 2" % os.environ.get('LOCALIP', '127.0.0.1') log = open("dummylog", "ab") log.write(b"Got arguments") for i, arg in enumerate(sys.argv[1:]): log.write(b" %d:%s" % (i + 1, arg.encode('latin1'))) log.write(b"\n") log.close() hgcmd = sys.argv[2] if os.name == 'nt': # hack to make simple unix single quote quoting work on windows hgcmd = hgcmd.replace("'", '"') cmds = shlex.split(hgcmd) if cmds[0].endswith('.py'): python_exe = os.environ['PYTHON'] cmds.insert(0, python_exe) hgcmd = shlex.join(cmds) # shlex generate windows incompatible string... hgcmd = hgcmd.replace("'", '"') r = subprocess.call(hgcmd, shell=True, close_fds=True) sys.exit(bool(r))