Mercurial > hg-stable
changeset 42942:a2dffe68b4ea
tests: stabilize test-fix.t on Windows
`pwd` prints /tmp/... style paths, not C:\... needed for $TESTTMP to be
substituted.
In the final test, for whatever reason, Windows was missing EOL in the files and
printing:
[wdir] changedlines: printf: warning: ignoring excess arguments, starting
with 'printf'
even though it was trying to run:
printf "Line ranges:\n"; printf "2 through 2\n";
I tried wrapping both :command and :linerange in `sh -c "..."`, and while that
fixed the missing EOL, it missed the "2 through 2" output.
Differential Revision: https://phab.mercurial-scm.org/D6852
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sat, 14 Sep 2019 12:11:03 -0400 |
parents | 69de49c4e39c |
children | 06080afd0565 |
files | tests/test-fix.t |
diffstat | 1 files changed, 9 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-fix.t Sun Sep 15 20:04:00 2019 -0700 +++ b/tests/test-fix.t Sat Sep 14 12:11:03 2019 -0400 @@ -1297,7 +1297,7 @@ $ cat >> .hg/hgrc <<EOF > [fix] - > printcwd:command = pwd + > printcwd:command = "$PYTHON" -c "import os; print(os.getcwd())" > printcwd:pattern = path:foo/bar > EOF @@ -1382,9 +1382,15 @@ $ printf "a\nc\n" > foo $ printf "a\nx\nc\n" > baz + $ cat >> print.py <<EOF + > import sys + > for a in sys.argv[1:]: + > print(a) + > EOF + $ hg fix --working-dir foo bar baz \ - > --config 'fix.changedlines:command=printf "Line ranges:\n"; ' \ - > --config 'fix.changedlines:linerange=printf "{first} through {last}\n"; ' \ + > --config "fix.changedlines:command=\"$PYTHON\" print.py \"Line ranges:\"" \ + > --config 'fix.changedlines:linerange="{first} through {last}"' \ > --config 'fix.changedlines:pattern=rootglob:**' \ > --config 'fix.changedlines:skipclean=false'