##// END OF EJS Templates
shelve: directly handle the initial parent alignment...
shelve: directly handle the initial parent alignment Shelve is currently sub-contracting some of its work to the rebase extension. In order to make shelve more independent and flexible we would like shelve to handle the parent alignment directly. After this change, we no longer need to use rebase in shelve. Differential Revision: https://phab.mercurial-scm.org/D3693

File last commit:

r37137:d4a2e0d5 default
r38637:c829749e default
Show More
test-config-env.py
54 lines | 1.3 KiB | text/x-python | PythonLexer
/ tests / test-config-env.py
Jun Wu
rcutil: let environ override system configs (BC)...
r31685 # Test the config layer generated by environment variables
from __future__ import absolute_import, print_function
import os
from mercurial import (
encoding,
rcutil,
ui as uimod,
Matt Harbison
tests: print Unix style paths in *.py tests...
r31857 util,
Jun Wu
rcutil: let environ override system configs (BC)...
r31685 )
Yuya Nishihara
procutil: bulk-replace util.std* to point to new module
r37137 from mercurial.utils import (
procutil,
)
Yuya Nishihara
py3: byte-stringify test-config.t and test-config-env.py
r36748 testtmp = encoding.environ[b'TESTTMP']
Jun Wu
rcutil: let environ override system configs (BC)...
r31685
# prepare hgrc files
def join(name):
return os.path.join(testtmp, name)
Yuya Nishihara
py3: byte-stringify test-config.t and test-config-env.py
r36748 with open(join(b'sysrc'), 'wb') as f:
f.write(b'[ui]\neditor=e0\n[pager]\npager=p0\n')
Jun Wu
rcutil: let environ override system configs (BC)...
r31685
Yuya Nishihara
py3: byte-stringify test-config.t and test-config-env.py
r36748 with open(join(b'userrc'), 'wb') as f:
f.write(b'[ui]\neditor=e1')
Jun Wu
rcutil: let environ override system configs (BC)...
r31685
# replace rcpath functions so they point to the files above
def systemrcpath():
Yuya Nishihara
py3: byte-stringify test-config.t and test-config-env.py
r36748 return [join(b'sysrc')]
Jun Wu
rcutil: let environ override system configs (BC)...
r31685
def userrcpath():
Yuya Nishihara
py3: byte-stringify test-config.t and test-config-env.py
r36748 return [join(b'userrc')]
Jun Wu
rcutil: let environ override system configs (BC)...
r31685
rcutil.systemrcpath = systemrcpath
rcutil.userrcpath = userrcpath
os.path.isdir = lambda x: False # hack: do not load default.d/*.rc
# utility to print configs
def printconfigs(env):
encoding.environ = env
rcutil._rccomponents = None # reset cache
ui = uimod.ui.load()
for section, name, value in ui.walkconfig():
source = ui.configsource(section, name)
Yuya Nishihara
procutil: bulk-replace util.std* to point to new module
r37137 procutil.stdout.write(b'%s.%s=%s # %s\n'
% (section, name, value, util.pconvert(source)))
procutil.stdout.write(b'\n')
Jun Wu
rcutil: let environ override system configs (BC)...
r31685
# environment variable overrides
printconfigs({})
Yuya Nishihara
py3: byte-stringify test-config.t and test-config-env.py
r36748 printconfigs({b'EDITOR': b'e2', b'PAGER': b'p2'})