# HG changeset patch # User Boris Feld # Date 2018-12-19 14:45:29 # Node ID 73da729ccfefde424a858bde11d5f6fff380bf69 # Parent 15f78383d3c84ee77e1d7995e81c61aa47ee70eb test: introduce a new flag to display env variable line per line It's easier to conditionalize some of the environment variables per Mercurial version once there is only one value per line. Differential Revision: https://phab.mercurial-scm.org/D5453 diff --git a/tests/printenv.py b/tests/printenv.py --- a/tests/printenv.py +++ b/tests/printenv.py @@ -37,6 +37,11 @@ parser.add_argument( parser.add_argument( "out", nargs="?", default=None, help="where to write the output" ) +parser.add_argument( + "--line", + action="store_true", + help="print environment variables one per line instead of on a single line", +) args = parser.parse_args() if args.out is None: @@ -56,9 +61,18 @@ if os.name == 'nt': filter = lambda x: x.replace('\\', '/') else: filter = lambda x: x + vars = [b"%s=%s" % (k.encode('ascii'), filter(v).encode('ascii')) for k, v in env] -out.write(b" ".join(vars)) + +# Print variables on out +if not args.line: + out.write(b" ".join(vars)) +else: + for var in vars: + out.write(var) + out.write(b"\n") + out.write(b"\n") out.close() diff --git a/tests/test-http.t b/tests/test-http.t --- a/tests/test-http.t +++ b/tests/test-http.t @@ -140,7 +140,7 @@ pull $ cd copy-pull $ cat >> .hg/hgrc < [hooks] - > changegroup = sh -c "printenv.py changegroup" + > changegroup = sh -c "printenv.py --line changegroup" > EOF $ hg pull pulling from http://localhost:$HGPORT1/ @@ -150,7 +150,14 @@ pull adding file changes added 1 changesets with 1 changes to 1 files new changesets 5fed3813f7f5 - changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_SOURCE=pull HG_TXNID=TXN:$ID$ HG_URL=http://localhost:$HGPORT1/ + changegroup hook: HG_HOOKNAME=changegroup + HG_HOOKTYPE=changegroup + HG_NODE=5fed3813f7f5e1824344fdc9cf8f63bb662c292d + HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d + HG_SOURCE=pull + HG_TXNID=TXN:$ID$ + HG_URL=http://localhost:$HGPORT1/ + (run 'hg update' to get a working copy) $ cd ..