##// END OF EJS Templates
narrow: fix flaky behavior described in issue6150...
narrow: fix flaky behavior described in issue6150 This has been plaguing the CI for a good while, and it doesn't appear to have an easy fix proposed yet. The solution in this change is to always do an unambiguous (but expensive) lookup in case of comparison. This should always be correct, albeit suboptimal. Differential Revision: https://phab.mercurial-scm.org/D10034

File last commit:

r46506:9dc1351d default
r47280:b994db7c stable
Show More
test-hgrc.t
308 lines | 7.9 KiB | text/troff | Tads3Lexer
Mads Kiilerich
tests: remove redundant globs...
r12640 Use hgrc within $TESTTMP
$ HGRCPATH=`pwd`/hgrc
$ export HGRCPATH
Gregory Szorc
tests: `hg init` after resetting HGRCPATH...
r37453 hide outer repo
$ hg init
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 Use an alternate var for scribbling on hgrc to keep check-code from
complaining about the important settings we may be overwriting:
$ HGRC=`pwd`/hgrc
$ export HGRC
Mads Kiilerich
tests: remove redundant globs...
r12640 Basic syntax error
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo "invalid" > $HGRC
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg version
Martin von Zweigbergk
errors: raise ConfigError on failure to parse config file...
r46506 config error at $TESTTMP/hgrc:1: invalid
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 [255]
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo "" > $HGRC
Brodie Rao
tests: unify test-hgrc
r12014
Martin Geisler
tests: added a short description to issue numbers...
r12399 Issue1199: Can't use '%' in hgrc (eg url encoded username)
Brodie Rao
tests: unify test-hgrc
r12014
$ hg init "foo%bar"
$ hg clone "foo%bar" foobar
updating to branch default
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd foobar
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ cat .hg/hgrc
timeless
samplehgrcs: use single quotes in use warning
r29978 # example repository config (see 'hg help config' for more info)
Jordi Gutiérrez Hermoso
config: use the same hgrc for a cloned repo as for an uninitted repo...
r22837 [paths]
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 default = $TESTTMP/foo%bar
Jordi Gutiérrez Hermoso
config: use the same hgrc for a cloned repo as for an uninitted repo...
r22837
# path aliases to other clones of this repo in URLs or filesystem paths
timeless
samplehgrcs: use single quotes in use warning
r29978 # (see 'hg help config.paths' for more info)
Jordi Gutiérrez Hermoso
config: use the same hgrc for a cloned repo as for an uninitted repo...
r22837 #
Rishabh Madan
ui: replace obsolete default-push with default:pushurl (issue5485)...
r31064 # default:pushurl = ssh://jdoe@example.net/hg/jdoes-fork
# my-fork = ssh://jdoe@example.net/hg/jdoes-fork
# my-clone = /home/jdoe/jdoes-clone
Jordi Gutiérrez Hermoso
config: use the same hgrc for a cloned repo as for an uninitted repo...
r22837
[ui]
# name and email (local to this repository, optional), e.g.
Augie Fackler
clone: provide sample username = config entry in .hg/hgrc (issue4359)...
r22380 # username = Jane Doe <jdoe@example.com>
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg paths
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 default = $TESTTMP/foo%bar
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg showconfig
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 bundle.mainreporoot=$TESTTMP/foobar
paths.default=$TESTTMP/foo%bar
Brodie Rao
tests: unify test-hgrc
r12014 $ cd ..
Denis Laxalde
py3: encode underlying error message during parse error of %include
r43570 Check %include
$ echo '[section]' > $TESTTMP/included
$ echo 'option = value' >> $TESTTMP/included
$ echo '%include $TESTTMP/included' >> $HGRC
$ hg showconfig section
section.option=value
Joerg Sonnenberger
tests: skip non-readable check for root...
r45217 #if unix-permissions no-root
Denis Laxalde
py3: encode underlying error message during parse error of %include
r43570 $ chmod u-r $TESTTMP/included
$ hg showconfig section
Martin von Zweigbergk
errors: raise ConfigError on failure to parse config file...
r46506 config error at $TESTTMP/hgrc:2: cannot include $TESTTMP/included (Permission denied)
Denis Laxalde
py3: encode underlying error message during parse error of %include
r43570 [255]
Denis Laxalde
tests: avoid chmod on windows in hgrc tests...
r43573 #endif
Denis Laxalde
py3: encode underlying error message during parse error of %include
r43570
Brodie Rao
tests: unify test-hgrc
r12014 issue1829: wrong indentation
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo '[foo]' > $HGRC
$ echo ' x = y' >> $HGRC
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg version
Martin von Zweigbergk
errors: raise ConfigError on failure to parse config file...
r46506 config error at $TESTTMP/hgrc:2: unexpected leading whitespace: x = y
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 [255]
Brodie Rao
tests: unify test-hgrc
r12014
Matt Harbison
tests: quote PYTHON usage...
r39743 $ "$PYTHON" -c "from __future__ import print_function; print('[foo]\nbar = a\n b\n c \n de\n fg \nbaz = bif cb \n')" \
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 > > $HGRC
Brodie Rao
tests: unify test-hgrc
r12014 $ hg showconfig foo
foo.bar=a\nb\nc\nde\nfg
foo.baz=bif cb
$ FAKEPATH=/path/to/nowhere
$ export FAKEPATH
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo '%include $FAKEPATH/no-such-file' > $HGRC
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg version
Matt Mackall
tests: glob version number in test-hgrc
r14491 Mercurial Distributed SCM (version *) (glob)
Matt Mackall
urls: bulk-change primary website URLs
r26421 (see https://mercurial-scm.org for more information)
Matt Mackall
tests: update for handling of missing hgrc includes
r14489
FUJIWARA Katsunori
misc: update year in copyright lines...
r30907 Copyright (C) 2005-* Matt Mackall and others (glob)
Matt Mackall
tests: update for handling of missing hgrc includes
r14489 This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Brodie Rao
tests: unify test-hgrc
r12014 $ unset FAKEPATH
Idan Kamara
dispatch: make sure global options on the command line take precedence...
r14992 make sure global options given on the cmdline take precedence
Idan Kamara
dispatch: make sure unspecified global ui options don't override old values
r14748
$ hg showconfig --config ui.verbose=True --quiet
Mads Kiilerich
tests: add missing no-outer-repo requirements...
r17015 bundle.mainreporoot=$TESTTMP
Idan Kamara
dispatch: make sure global options on the command line take precedence...
r14992 ui.verbose=False
ui.debug=False
Idan Kamara
dispatch: make sure unspecified global ui options don't override old values
r14748 ui.quiet=True
Idan Kamara
dispatch: make sure global options on the command line take precedence...
r14992 $ touch foobar/untracked
$ cat >> foobar/.hg/hgrc <<EOF
> [ui]
> verbose=True
> EOF
$ hg -R foobar st -q
Brodie Rao
tests: unify test-hgrc
r12014 username expansion
$ olduser=$HGUSER
$ unset HGUSER
$ FAKEUSER='John Doe'
$ export FAKEUSER
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo '[ui]' > $HGRC
$ echo 'username = $FAKEUSER' >> $HGRC
Brodie Rao
tests: unify test-hgrc
r12014
$ hg init usertest
$ cd usertest
$ touch bar
$ hg commit --addremove --quiet -m "added bar"
$ hg log --template "{author}\n"
John Doe
$ cd ..
Nicolas Dumazet
tests: remove useless sed in test-hgrc
r12109 $ hg showconfig
Mads Kiilerich
tests: add missing no-outer-repo requirements...
r17015 bundle.mainreporoot=$TESTTMP
Brodie Rao
tests: unify test-hgrc
r12014 ui.username=$FAKEUSER
$ unset FAKEUSER
$ HGUSER=$olduser
$ export HGUSER
Brodie Rao
showconfig: don't accept multiple sections and one config item...
r12697 showconfig with multiple arguments
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo "[alias]" > $HGRC
$ echo "log = log -g" >> $HGRC
$ echo "[defaults]" >> $HGRC
$ echo "identify = -n" >> $HGRC
Brodie Rao
showconfig: don't accept multiple sections and one config item...
r12697 $ hg showconfig alias defaults
alias.log=log -g
defaults.identify=-n
Yuya Nishihara
showconfig: use set to filter sections and entry names...
r36434 $ hg showconfig alias alias
alias.log=log -g
$ hg showconfig alias.log alias.log
Yuya Nishihara
showconfig: allow multiple section.name selectors (issue5797)...
r36435 alias.log=log -g
Brodie Rao
showconfig: don't accept multiple sections and one config item...
r12697 $ hg showconfig alias defaults.identify
Yuya Nishihara
showconfig: allow multiple section.name selectors (issue5797)...
r36435 alias.log=log -g
defaults.identify=-n
Brodie Rao
showconfig: don't accept multiple sections and one config item...
r12697 $ hg showconfig alias.log defaults.identify
Yuya Nishihara
showconfig: allow multiple section.name selectors (issue5797)...
r36435 alias.log=log -g
defaults.identify=-n
Brodie Rao
showconfig: don't accept multiple sections and one config item...
r12697
Brodie Rao
tests: unify test-hgrc
r12014 HGPLAIN
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo "[ui]" > $HGRC
$ echo "debug=true" >> $HGRC
$ echo "fallbackencoding=ASCII" >> $HGRC
$ echo "quiet=true" >> $HGRC
$ echo "slash=true" >> $HGRC
$ echo "traceback=true" >> $HGRC
$ echo "verbose=true" >> $HGRC
$ echo "style=~/.hgstyle" >> $HGRC
$ echo "logtemplate={node}" >> $HGRC
$ echo "[defaults]" >> $HGRC
$ echo "identify=-n" >> $HGRC
$ echo "[alias]" >> $HGRC
$ echo "log=log -g" >> $HGRC
Brodie Rao
tests: unify test-hgrc
r12014
customized hgrc
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg showconfig
Mads Kiilerich
tests: remove redundant globs...
r12640 read config from: $TESTTMP/hgrc
$TESTTMP/hgrc:13: alias.log=log -g
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 repo: bundle.mainreporoot=$TESTTMP
Mads Kiilerich
tests: remove redundant globs...
r12640 $TESTTMP/hgrc:11: defaults.identify=-n
$TESTTMP/hgrc:2: ui.debug=true
$TESTTMP/hgrc:3: ui.fallbackencoding=ASCII
$TESTTMP/hgrc:4: ui.quiet=true
$TESTTMP/hgrc:5: ui.slash=true
$TESTTMP/hgrc:6: ui.traceback=true
$TESTTMP/hgrc:7: ui.verbose=true
$TESTTMP/hgrc:8: ui.style=~/.hgstyle
$TESTTMP/hgrc:9: ui.logtemplate={node}
Brodie Rao
tests: unify test-hgrc
r12014
plain hgrc
$ HGPLAIN=; export HGPLAIN
Matt Mackall
tests: drop a bunch of sed calls from unified tests
r12366 $ hg showconfig --config ui.traceback=True --debug
Mads Kiilerich
tests: remove redundant globs...
r12640 read config from: $TESTTMP/hgrc
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 repo: bundle.mainreporoot=$TESTTMP
--config: ui.traceback=True
--verbose: ui.verbose=False
--debug: ui.debug=True
--quiet: ui.quiet=False
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849
Jun Wu
debugconfig: list environment variables in debug output...
r31686 with environment variables
$ PAGER=p1 EDITOR=e1 VISUAL=e2 hg showconfig --debug
read config from: $TESTTMP/hgrc
repo: bundle.mainreporoot=$TESTTMP
$PAGER: pager.pager=p1
$VISUAL: ui.editor=e2
--verbose: ui.verbose=False
--debug: ui.debug=True
--quiet: ui.quiet=False
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 plain mode with exceptions
$ cat > plain.py <<EOF
Yuya Nishihara
test-hgrc: do not print ui.plain() flag at uisetup()...
r28611 > from mercurial import commands, extensions
> def _config(orig, ui, repo, *values, **opts):
Pulkit Goyal
py3: add b'' prefixes in tests/test-hgrc.t...
r38084 > ui.write(b'plain: %r\n' % ui.plain())
Yuya Nishihara
test-hgrc: do not print ui.plain() flag at uisetup()...
r28611 > return orig(ui, repo, *values, **opts)
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 > def uisetup(ui):
Pulkit Goyal
py3: add b'' prefixes in tests/test-hgrc.t...
r38084 > extensions.wrapcommand(commands.table, b'config', _config)
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 > EOF
Matt Mackall
check-code: fix issues with finding patterns in unified tests, fix tests...
r15372 $ echo "[extensions]" >> $HGRC
$ echo "plain=./plain.py" >> $HGRC
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 $ HGPLAINEXCEPT=; export HGPLAINEXCEPT
$ hg showconfig --config ui.traceback=True --debug
"Yann E. MORIN"
ui: test plain mode against exceptions...
r14372 plain: True
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 read config from: $TESTTMP/hgrc
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 repo: bundle.mainreporoot=$TESTTMP
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 $TESTTMP/hgrc:15: extensions.plain=./plain.py
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 --config: ui.traceback=True
--verbose: ui.verbose=False
--debug: ui.debug=True
--quiet: ui.quiet=False
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 $ unset HGPLAIN
$ hg showconfig --config ui.traceback=True --debug
"Yann E. MORIN"
ui: test plain mode against exceptions...
r14372 plain: True
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 read config from: $TESTTMP/hgrc
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 repo: bundle.mainreporoot=$TESTTMP
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 $TESTTMP/hgrc:15: extensions.plain=./plain.py
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 --config: ui.traceback=True
--verbose: ui.verbose=False
--debug: ui.debug=True
--quiet: ui.quiet=False
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 $ HGPLAINEXCEPT=i18n; export HGPLAINEXCEPT
$ hg showconfig --config ui.traceback=True --debug
"Yann E. MORIN"
ui: test plain mode against exceptions...
r14372 plain: True
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 read config from: $TESTTMP/hgrc
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 repo: bundle.mainreporoot=$TESTTMP
Brodie Rao
HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT...
r13849 $TESTTMP/hgrc:15: extensions.plain=./plain.py
Mads Kiilerich
config: give a useful hint of source for the most common command line settings...
r20788 --config: ui.traceback=True
--verbose: ui.verbose=False
--debug: ui.debug=True
--quiet: ui.quiet=False
Mads Kiilerich
config: don't set source when no source is specified - don't overwrite with ''...
r20789
source of paths is not mangled
$ cat >> $HGRCPATH <<EOF
> [paths]
> foo = bar
> EOF
$ hg showconfig --debug paths
plain: True
read config from: $TESTTMP/hgrc
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 $TESTTMP/hgrc:17: paths.foo=$TESTTMP/bar
hgrc: introduce HGRCSKIPREPO to skip reading the repository's hgrc...
r44583
Test we can skip the user configuration
$ cat >> .hg/hgrc <<EOF
> [paths]
> elephant = babar
> EOF
$ hg path
elephant = $TESTTMP/babar
foo = $TESTTMP/bar
$ HGRCSKIPREPO=1 hg path
foo = $TESTTMP/bar
config: also respect HGRCSKIPREPO in `dispatch._getlocal`...
r44728 $ cat >> .hg/hgrc <<EOF
> [broken
> EOF
$ hg path
Martin von Zweigbergk
errors: raise ConfigError on failure to parse config file...
r46506 config error at $TESTTMP/.hg/hgrc:3: [broken
config: also respect HGRCSKIPREPO in `dispatch._getlocal`...
r44728 [255]
$ HGRCSKIPREPO=1 hg path
foo = $TESTTMP/bar
config: also respect HGRCSKIPREPO in hgwebdir_mod...
r44729 Check that hgweb respect HGRCSKIPREPO=1
$ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
Martin von Zweigbergk
errors: raise ConfigError on failure to parse config file...
r46506 config error at $TESTTMP/.hg/hgrc:3: [broken
config: also respect HGRCSKIPREPO in hgwebdir_mod...
r44729 [255]
$ test -f hg.pid && (cat hg.pid >> $DAEMON_PIDS)
[1]
$ killdaemons.py
$ test -f access.log && cat access.log
[1]
$ test -f errors.log && cat errors.log
[1]
$ HGRCSKIPREPO=1 hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
$ killdaemons.py
$ cat access.log
$ cat errors.log
config: also respect HGRCSKIPREPO in the zeroconf extension...
r44730
Check that zeroconf respect HGRCSKIPREPO=1
$ hg paths --config extensions.zeroconf=
Martin von Zweigbergk
errors: raise ConfigError on failure to parse config file...
r46506 config error at $TESTTMP/.hg/hgrc:3: [broken
config: also respect HGRCSKIPREPO in the zeroconf extension...
r44730 [255]
$ HGRCSKIPREPO=1 hg paths --config extensions.zeroconf=
foo = $TESTTMP/bar