Mercurial > hg-stable
view tests/dummyssh @ 47765:184d83ef2e59 stable
tests: demonstrate bug in `hg fix` with incorrectly dirty working copy
If the parent commit needs formatting but the working copy already has
the correct formatting, then the working copy will be reported as
modified even though it's clean (because the size in the dirstate is
incorrect). Because the bug only occurs when the size changes, I
modified the formatter used in the test case to remove repeated
spaces.
Differential Revision: https://phab.mercurial-scm.org/D11208
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Thu, 22 Jul 2021 17:12:56 -0700 |
parents | 5d9f89cd4984 |
children | fb8389f227a0 |
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) sys.exit(bool(r))