test-hgrc.t
214 lines
| 5.3 KiB
| text/troff
|
Tads3Lexer
/ tests / test-hgrc.t
Mads Kiilerich
|
r17015 | hide outer repo | ||
$ hg init | ||||
Mads Kiilerich
|
r12640 | Use hgrc within $TESTTMP | ||
$ HGRCPATH=`pwd`/hgrc | ||||
$ export HGRCPATH | ||||
Matt Mackall
|
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
|
r12640 | Basic syntax error | ||
Matt Mackall
|
r15372 | $ echo "invalid" > $HGRC | ||
Matt Mackall
|
r12366 | $ hg version | ||
Mads Kiilerich
|
r12640 | hg: parse error at $TESTTMP/hgrc:1: invalid | ||
Matt Mackall
|
r12366 | [255] | ||
Matt Mackall
|
r15372 | $ echo "" > $HGRC | ||
Brodie Rao
|
r12014 | |||
Martin Geisler
|
r12399 | Issue1199: Can't use '%' in hgrc (eg url encoded username) | ||
Brodie Rao
|
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
|
r12366 | $ cat .hg/hgrc | ||
Brodie Rao
|
r12014 | [paths] | ||
Mads Kiilerich
|
r15447 | default = $TESTTMP/foo%bar (glob) | ||
Matt Mackall
|
r12366 | $ hg paths | ||
Mads Kiilerich
|
r15447 | default = $TESTTMP/foo%bar (glob) | ||
Matt Mackall
|
r12366 | $ hg showconfig | ||
Mads Kiilerich
|
r15447 | bundle.mainreporoot=$TESTTMP/foobar (glob) | ||
paths.default=$TESTTMP/foo%bar (glob) | ||||
Brodie Rao
|
r12014 | $ cd .. | ||
issue1829: wrong indentation | ||||
Matt Mackall
|
r15372 | $ echo '[foo]' > $HGRC | ||
$ echo ' x = y' >> $HGRC | ||||
Matt Mackall
|
r12366 | $ hg version | ||
Mads Kiilerich
|
r12640 | hg: parse error at $TESTTMP/hgrc:2: x = y | ||
Matt Mackall
|
r12366 | [255] | ||
Brodie Rao
|
r12014 | |||
$ python -c "print '[foo]\nbar = a\n b\n c \n de\n fg \nbaz = bif cb \n'" \ | ||||
Matt Mackall
|
r15372 | > > $HGRC | ||
Brodie Rao
|
r12014 | $ hg showconfig foo | ||
foo.bar=a\nb\nc\nde\nfg | ||||
foo.baz=bif cb | ||||
$ FAKEPATH=/path/to/nowhere | ||||
$ export FAKEPATH | ||||
Matt Mackall
|
r15372 | $ echo '%include $FAKEPATH/no-such-file' > $HGRC | ||
Matt Mackall
|
r12366 | $ hg version | ||
Matt Mackall
|
r14491 | Mercurial Distributed SCM (version *) (glob) | ||
Matt Mackall
|
r14489 | (see http://mercurial.selenic.com for more information) | ||
Kevin Bullock
|
r20227 | Copyright (C) 2005-2014 Matt Mackall and others | ||
Matt Mackall
|
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
|
r12014 | $ unset FAKEPATH | ||
Idan Kamara
|
r14992 | make sure global options given on the cmdline take precedence | ||
Idan Kamara
|
r14748 | |||
$ hg showconfig --config ui.verbose=True --quiet | ||||
Mads Kiilerich
|
r17015 | bundle.mainreporoot=$TESTTMP | ||
Idan Kamara
|
r14992 | ui.verbose=False | ||
ui.debug=False | ||||
Idan Kamara
|
r14748 | ui.quiet=True | ||
Idan Kamara
|
r14992 | $ touch foobar/untracked | ||
$ cat >> foobar/.hg/hgrc <<EOF | ||||
> [ui] | ||||
> verbose=True | ||||
> EOF | ||||
$ hg -R foobar st -q | ||||
Brodie Rao
|
r12014 | username expansion | ||
$ olduser=$HGUSER | ||||
$ unset HGUSER | ||||
$ FAKEUSER='John Doe' | ||||
$ export FAKEUSER | ||||
Matt Mackall
|
r15372 | $ echo '[ui]' > $HGRC | ||
$ echo 'username = $FAKEUSER' >> $HGRC | ||||
Brodie Rao
|
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
|
r12109 | $ hg showconfig | ||
Mads Kiilerich
|
r17015 | bundle.mainreporoot=$TESTTMP | ||
Brodie Rao
|
r12014 | ui.username=$FAKEUSER | ||
$ unset FAKEUSER | ||||
$ HGUSER=$olduser | ||||
$ export HGUSER | ||||
Brodie Rao
|
r12697 | showconfig with multiple arguments | ||
Matt Mackall
|
r15372 | $ echo "[alias]" > $HGRC | ||
$ echo "log = log -g" >> $HGRC | ||||
$ echo "[defaults]" >> $HGRC | ||||
$ echo "identify = -n" >> $HGRC | ||||
Brodie Rao
|
r12697 | $ hg showconfig alias defaults | ||
alias.log=log -g | ||||
defaults.identify=-n | ||||
$ hg showconfig alias defaults.identify | ||||
abort: only one config item permitted | ||||
[255] | ||||
$ hg showconfig alias.log defaults.identify | ||||
abort: only one config item permitted | ||||
[255] | ||||
Brodie Rao
|
r12014 | HGPLAIN | ||
Matt Mackall
|
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
|
r12014 | |||
customized hgrc | ||||
Matt Mackall
|
r12366 | $ hg showconfig | ||
Mads Kiilerich
|
r12640 | read config from: $TESTTMP/hgrc | ||
$TESTTMP/hgrc:13: alias.log=log -g | ||||
Mads Kiilerich
|
r20788 | repo: bundle.mainreporoot=$TESTTMP | ||
Mads Kiilerich
|
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
|
r12014 | |||
plain hgrc | ||||
$ HGPLAIN=; export HGPLAIN | ||||
Matt Mackall
|
r12366 | $ hg showconfig --config ui.traceback=True --debug | ||
Mads Kiilerich
|
r12640 | read config from: $TESTTMP/hgrc | ||
Mads Kiilerich
|
r20788 | repo: bundle.mainreporoot=$TESTTMP | ||
--config: ui.traceback=True | ||||
--verbose: ui.verbose=False | ||||
--debug: ui.debug=True | ||||
--quiet: ui.quiet=False | ||||
Brodie Rao
|
r13849 | |||
plain mode with exceptions | ||||
$ cat > plain.py <<EOF | ||||
> def uisetup(ui): | ||||
> ui.write('plain: %r\n' % ui.plain()) | ||||
> EOF | ||||
Matt Mackall
|
r15372 | $ echo "[extensions]" >> $HGRC | ||
$ echo "plain=./plain.py" >> $HGRC | ||||
Brodie Rao
|
r13849 | $ HGPLAINEXCEPT=; export HGPLAINEXCEPT | ||
$ hg showconfig --config ui.traceback=True --debug | ||||
"Yann E. MORIN"
|
r14372 | plain: True | ||
Brodie Rao
|
r13849 | read config from: $TESTTMP/hgrc | ||
Mads Kiilerich
|
r20788 | repo: bundle.mainreporoot=$TESTTMP | ||
Brodie Rao
|
r13849 | $TESTTMP/hgrc:15: extensions.plain=./plain.py | ||
Mads Kiilerich
|
r20788 | --config: ui.traceback=True | ||
--verbose: ui.verbose=False | ||||
--debug: ui.debug=True | ||||
--quiet: ui.quiet=False | ||||
Brodie Rao
|
r13849 | $ unset HGPLAIN | ||
$ hg showconfig --config ui.traceback=True --debug | ||||
"Yann E. MORIN"
|
r14372 | plain: True | ||
Brodie Rao
|
r13849 | read config from: $TESTTMP/hgrc | ||
Mads Kiilerich
|
r20788 | repo: bundle.mainreporoot=$TESTTMP | ||
Brodie Rao
|
r13849 | $TESTTMP/hgrc:15: extensions.plain=./plain.py | ||
Mads Kiilerich
|
r20788 | --config: ui.traceback=True | ||
--verbose: ui.verbose=False | ||||
--debug: ui.debug=True | ||||
--quiet: ui.quiet=False | ||||
Brodie Rao
|
r13849 | $ HGPLAINEXCEPT=i18n; export HGPLAINEXCEPT | ||
$ hg showconfig --config ui.traceback=True --debug | ||||
"Yann E. MORIN"
|
r14372 | plain: True | ||
Brodie Rao
|
r13849 | read config from: $TESTTMP/hgrc | ||
Mads Kiilerich
|
r20788 | repo: bundle.mainreporoot=$TESTTMP | ||
Brodie Rao
|
r13849 | $TESTTMP/hgrc:15: extensions.plain=./plain.py | ||
Mads Kiilerich
|
r20788 | --config: ui.traceback=True | ||
--verbose: ui.verbose=False | ||||
--debug: ui.debug=True | ||||
--quiet: ui.quiet=False | ||||
Mads Kiilerich
|
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 | ||||
$TESTTMP/hgrc:17: paths.foo=$TESTTMP/bar | ||||