tests/test-hgrc.t
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
Sun, 14 Feb 2016 01:33:55 +0900
changeset 28119 91a827e760df
parent 27925 f6d73c8756e2
child 28610 3aa50c9d89a0
permissions -rw-r--r--
hg: make cachedlocalrepo cache appropriate repoview object Before this patch, 'cachedlocalrepo' always caches "visible" repoview object, because 'cachedlocalrepo' uses "visible" repoview returned by 'hg.repository()' without any additional processing. If the client of 'cachedlocalrepo' wants "served" repoview, some objects to be cached are discarded unintentionally. 1. 'cachedlocalrepo' newly caches "visible" repoview object (call it VIEW1) 2. 'cachedlocalrepo' returns VIEW1 to the client of it at 'fetch()' 3. the client gets "served" repoview object by 'filtered("served")' on VIEW1 (call this "served" repoview VIEW2) 4. accessing to 'repo.changelog' implies: - instantiation of changelog via 'localrepository.changelog' - instantiation of "filtered changelog" via 'repoview.changelog' 5. "filtered changelog" above is cached in VIEW2 6. VIEW2 is discarded after processing, because there is no reference to it 7. 'cachedlocalrepo' returns VIEW1 cached at (1) above to the client at next 'fetch()' 8. 'filtered("served")' on VIEW1 at the client side creates new "served" repoview again, because VIEW1 is "visible" (call this new "served" repoview VIEW3) 9. accessing to 'repo.changelog' implies instantiation of filtered changelog again, because "filtered changelog" is cached in VIEW2 at (5), but not in VIEW3 currently used 10. (go to (7) above) As described above, "served" repoview object and "filtered changelog" cached in it are discarded always, even if the repository itself hasn't been changed since last access. For example, in the case of 'hgweb_mod.hgweb', "newly caching" occurs, when: - all cached objects are already assigned to another threads (in this case, repoview is created in 'cachedlocalrepo.copy()') - or, stat of '00changelog.i' is changed from last access (in this case, repoview is created in 'cachedlocalrepo.fetch()') once changes are pushed via HTTP, this always occurs. The root cause of this inefficiency is that 'cachedlocalrepo' always caches "visible" repoview object, even if the client of it wants another view. To make 'cachedlocalrepo' cache appropriate repoview object, this patch adds additional filtering on the repo object returned by 'hg.repository()'. It is assumed that initial repoview object should be already filtered by expected view. After this patch: - 'filtered("served")' on VIEW1 at (3)/(7) above returns VIEW1 itself, because VIEW1 is now "served", and - VIEW2 and VIEW3 equal VIEW1 - therefore, "filtered changelog" is cached in VIEW1, and reused intentionally
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17015
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16911
diff changeset
     1
hide outer repo
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16911
diff changeset
     2
  $ hg init
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16911
diff changeset
     3
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
     4
Use hgrc within $TESTTMP
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
     5
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
     6
  $ HGRCPATH=`pwd`/hgrc
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
     7
  $ export HGRCPATH
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
     8
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
     9
Use an alternate var for scribbling on hgrc to keep check-code from
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    10
complaining about the important settings we may be overwriting:
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    11
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    12
  $ HGRC=`pwd`/hgrc
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    13
  $ export HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    14
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
    15
Basic syntax error
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
    16
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    17
  $ echo "invalid" > $HGRC
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    18
  $ hg version
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
    19
  hg: parse error at $TESTTMP/hgrc:1: invalid
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    20
  [255]
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    21
  $ echo "" > $HGRC
1473
7d66ce9895fa make readconfig take a filename instead of a file pointer as argument
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    22
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12376
diff changeset
    23
Issue1199: Can't use '%' in hgrc (eg url encoded username)
7044
e51c0f41f271 Escape '%' when writing to hgrc (issue1199)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 4659
diff changeset
    24
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    25
  $ hg init "foo%bar"
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    26
  $ hg clone "foo%bar" foobar
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    27
  updating to branch default
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    28
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    29
  $ cd foobar
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    30
  $ cat .hg/hgrc
22837
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    31
  # example repository config (see "hg help config" for more info)
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    32
  [paths]
23056
d898c7e8c301 tests: add "(glob)" to paths in test-hgrc.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22947
diff changeset
    33
  default = $TESTTMP/foo%bar (glob)
22837
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    34
  
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    35
  # path aliases to other clones of this repo in URLs or filesystem paths
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    36
  # (see "hg help config.paths" for more info)
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    37
  #
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    38
  # default-push = ssh://jdoe@example.net/hg/jdoes-fork
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    39
  # my-fork      = ssh://jdoe@example.net/hg/jdoes-fork
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    40
  # my-clone     = /home/jdoe/jdoes-clone
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    41
  
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    42
  [ui]
2be7d5ebd4d0 config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 22380
diff changeset
    43
  # name and email (local to this repository, optional), e.g.
22380
82b2ba904e3e clone: provide sample username = config entry in .hg/hgrc (issue4359)
Augie Fackler <raf@durin42.com>
parents: 22276
diff changeset
    44
  # username = Jane Doe <jdoe@example.com>
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    45
  $ hg paths
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15372
diff changeset
    46
  default = $TESTTMP/foo%bar (glob)
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    47
  $ hg showconfig
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15372
diff changeset
    48
  bundle.mainreporoot=$TESTTMP/foobar (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15372
diff changeset
    49
  paths.default=$TESTTMP/foo%bar (glob)
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    50
  $ cd ..
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    51
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    52
issue1829: wrong indentation
9470
ba75830d17a9 dispatch: catch ConfigError while constructing ui
Martin Geisler <mg@lazybytes.net>
parents: 7044
diff changeset
    53
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    54
  $ echo '[foo]' > $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    55
  $ echo '  x = y' >> $HGRC
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    56
  $ hg version
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
    57
  hg: parse error at $TESTTMP/hgrc:2:   x = y
22276
b13b99d39a46 config: highlight parse error caused by leading spaces (issue3214)
Razvan Cojocaru <razvan.cojocaru93@gmail.com>
parents: 20789
diff changeset
    58
  unexpected leading whitespace
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    59
  [255]
10042
7cdd2a7db2c2 config: raise ConfigError on non-existing include files
Martin Geisler <mg@lazybytes.net>
parents: 9470
diff changeset
    60
22947
c63a09b6b337 tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents: 22837
diff changeset
    61
  $ $PYTHON -c "print '[foo]\nbar = a\n b\n c \n  de\n fg \nbaz = bif cb \n'" \
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    62
  > > $HGRC
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    63
  $ hg showconfig foo
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    64
  foo.bar=a\nb\nc\nde\nfg
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    65
  foo.baz=bif cb
10295
44c923eeb81d config: handle short continuations (issue1999)
Matt Mackall <mpm@selenic.com>
parents: 10042
diff changeset
    66
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    67
  $ FAKEPATH=/path/to/nowhere
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    68
  $ export FAKEPATH
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
    69
  $ echo '%include $FAKEPATH/no-such-file' > $HGRC
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
    70
  $ hg version
14491
a086b91ce7fb tests: glob version number in test-hgrc
Matt Mackall <mpm@selenic.com>
parents: 14489
diff changeset
    71
  Mercurial Distributed SCM (version *) (glob)
26421
4b0fc75f9403 urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents: 24191
diff changeset
    72
  (see https://mercurial-scm.org for more information)
14489
3a27faf9a999 tests: update for handling of missing hgrc includes
Matt Mackall <mpm@selenic.com>
parents: 14372
diff changeset
    73
  
27925
f6d73c8756e2 copyright: update to 2016
timeless <timeless@mozdev.org>
parents: 26421
diff changeset
    74
  Copyright (C) 2005-2016 Matt Mackall and others
14489
3a27faf9a999 tests: update for handling of missing hgrc includes
Matt Mackall <mpm@selenic.com>
parents: 14372
diff changeset
    75
  This is free software; see the source for copying conditions. There is NO
3a27faf9a999 tests: update for handling of missing hgrc includes
Matt Mackall <mpm@selenic.com>
parents: 14372
diff changeset
    76
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    77
  $ unset FAKEPATH
10455
40dfd46d098f ui: add HGPLAIN environment variable for easier scripting
Brodie Rao <me+hg@dackz.net>
parents: 10296
diff changeset
    78
14992
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    79
make sure global options given on the cmdline take precedence
14748
1b8c70c9f47c dispatch: make sure unspecified global ui options don't override old values
Idan Kamara <idankk86@gmail.com>
parents: 14491
diff changeset
    80
1b8c70c9f47c dispatch: make sure unspecified global ui options don't override old values
Idan Kamara <idankk86@gmail.com>
parents: 14491
diff changeset
    81
  $ hg showconfig --config ui.verbose=True --quiet
17015
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16911
diff changeset
    82
  bundle.mainreporoot=$TESTTMP
14992
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    83
  ui.verbose=False
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    84
  ui.debug=False
14748
1b8c70c9f47c dispatch: make sure unspecified global ui options don't override old values
Idan Kamara <idankk86@gmail.com>
parents: 14491
diff changeset
    85
  ui.quiet=True
1b8c70c9f47c dispatch: make sure unspecified global ui options don't override old values
Idan Kamara <idankk86@gmail.com>
parents: 14491
diff changeset
    86
14992
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    87
  $ touch foobar/untracked
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    88
  $ cat >> foobar/.hg/hgrc <<EOF
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    89
  > [ui]
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    90
  > verbose=True
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    91
  > EOF
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    92
  $ hg -R foobar st -q
188936b334b1 dispatch: make sure global options on the command line take precedence
Idan Kamara <idankk86@gmail.com>
parents: 14748
diff changeset
    93
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    94
username expansion
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    95
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    96
  $ olduser=$HGUSER
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    97
  $ unset HGUSER
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    98
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
    99
  $ FAKEUSER='John Doe'
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   100
  $ export FAKEUSER
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   101
  $ echo '[ui]' > $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   102
  $ echo 'username = $FAKEUSER' >> $HGRC
11225
d6dbd5e4ee72 ui.username(): expand environment variables in username configuration value.
Chad Dombrova <chadrik@gmail.com>
parents: 11224
diff changeset
   103
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   104
  $ hg init usertest
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   105
  $ cd usertest
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   106
  $ touch bar
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   107
  $ hg commit --addremove --quiet -m "added bar"
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   108
  $ hg log --template "{author}\n"
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   109
  John Doe
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   110
  $ cd ..
11225
d6dbd5e4ee72 ui.username(): expand environment variables in username configuration value.
Chad Dombrova <chadrik@gmail.com>
parents: 11224
diff changeset
   111
12109
51272b65b9b7 tests: remove useless sed in test-hgrc
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12014
diff changeset
   112
  $ hg showconfig
17015
73d20de5f30b tests: add missing no-outer-repo requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16911
diff changeset
   113
  bundle.mainreporoot=$TESTTMP
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   114
  ui.username=$FAKEUSER
11225
d6dbd5e4ee72 ui.username(): expand environment variables in username configuration value.
Chad Dombrova <chadrik@gmail.com>
parents: 11224
diff changeset
   115
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   116
  $ unset FAKEUSER
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   117
  $ HGUSER=$olduser
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   118
  $ export HGUSER
11225
d6dbd5e4ee72 ui.username(): expand environment variables in username configuration value.
Chad Dombrova <chadrik@gmail.com>
parents: 11224
diff changeset
   119
12697
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   120
showconfig with multiple arguments
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   121
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   122
  $ echo "[alias]" > $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   123
  $ echo "log = log -g" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   124
  $ echo "[defaults]" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   125
  $ echo "identify = -n" >> $HGRC
12697
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   126
  $ hg showconfig alias defaults
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   127
  alias.log=log -g
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   128
  defaults.identify=-n
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   129
  $ hg showconfig alias defaults.identify
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   130
  abort: only one config item permitted
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   131
  [255]
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   132
  $ hg showconfig alias.log defaults.identify
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   133
  abort: only one config item permitted
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   134
  [255]
14853ca7e11b showconfig: don't accept multiple sections and one config item
Brodie Rao <brodie@bitheap.org>
parents: 12640
diff changeset
   135
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   136
HGPLAIN
11225
d6dbd5e4ee72 ui.username(): expand environment variables in username configuration value.
Chad Dombrova <chadrik@gmail.com>
parents: 11224
diff changeset
   137
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   138
  $ echo "[ui]" > $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   139
  $ echo "debug=true" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   140
  $ echo "fallbackencoding=ASCII" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   141
  $ echo "quiet=true" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   142
  $ echo "slash=true" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   143
  $ echo "traceback=true" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   144
  $ echo "verbose=true" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   145
  $ echo "style=~/.hgstyle" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   146
  $ echo "logtemplate={node}" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   147
  $ echo "[defaults]" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   148
  $ echo "identify=-n" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   149
  $ echo "[alias]" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   150
  $ echo "log=log -g" >> $HGRC
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   151
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   152
customized hgrc
10455
40dfd46d098f ui: add HGPLAIN environment variable for easier scripting
Brodie Rao <me+hg@dackz.net>
parents: 10296
diff changeset
   153
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
   154
  $ hg showconfig
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   155
  read config from: $TESTTMP/hgrc
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   156
  $TESTTMP/hgrc:13: alias.log=log -g
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   157
  repo: bundle.mainreporoot=$TESTTMP
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   158
  $TESTTMP/hgrc:11: defaults.identify=-n
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   159
  $TESTTMP/hgrc:2: ui.debug=true
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   160
  $TESTTMP/hgrc:3: ui.fallbackencoding=ASCII
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   161
  $TESTTMP/hgrc:4: ui.quiet=true
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   162
  $TESTTMP/hgrc:5: ui.slash=true
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   163
  $TESTTMP/hgrc:6: ui.traceback=true
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   164
  $TESTTMP/hgrc:7: ui.verbose=true
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   165
  $TESTTMP/hgrc:8: ui.style=~/.hgstyle
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   166
  $TESTTMP/hgrc:9: ui.logtemplate={node}
10455
40dfd46d098f ui: add HGPLAIN environment variable for easier scripting
Brodie Rao <me+hg@dackz.net>
parents: 10296
diff changeset
   167
12014
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   168
plain hgrc
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   169
8508dd698c02 tests: unify test-hgrc
Brodie Rao <brodie@bitheap.org>
parents: 11225
diff changeset
   170
  $ HGPLAIN=; export HGPLAIN
12366
c01dc9087d9a tests: drop a bunch of sed calls from unified tests
Matt Mackall <mpm@selenic.com>
parents: 12109
diff changeset
   171
  $ hg showconfig --config ui.traceback=True --debug
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12399
diff changeset
   172
  read config from: $TESTTMP/hgrc
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   173
  repo: bundle.mainreporoot=$TESTTMP
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   174
  --config: ui.traceback=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   175
  --verbose: ui.verbose=False
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   176
  --debug: ui.debug=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   177
  --quiet: ui.quiet=False
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   178
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   179
plain mode with exceptions
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   180
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   181
  $ cat > plain.py <<EOF
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   182
  > def uisetup(ui):
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   183
  >     ui.write('plain: %r\n' % ui.plain())
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   184
  > EOF
15372
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   185
  $ echo "[extensions]" >> $HGRC
695ac6aca77f check-code: fix issues with finding patterns in unified tests, fix tests
Matt Mackall <mpm@selenic.com>
parents: 14992
diff changeset
   186
  $ echo "plain=./plain.py" >> $HGRC
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   187
  $ HGPLAINEXCEPT=; export HGPLAINEXCEPT
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   188
  $ hg showconfig --config ui.traceback=True --debug
14372
be0daa0eeb3e ui: test plain mode against exceptions
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
parents: 13849
diff changeset
   189
  plain: True
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   190
  read config from: $TESTTMP/hgrc
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   191
  repo: bundle.mainreporoot=$TESTTMP
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   192
  $TESTTMP/hgrc:15: extensions.plain=./plain.py
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   193
  --config: ui.traceback=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   194
  --verbose: ui.verbose=False
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   195
  --debug: ui.debug=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   196
  --quiet: ui.quiet=False
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   197
  $ unset HGPLAIN
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   198
  $ hg showconfig --config ui.traceback=True --debug
14372
be0daa0eeb3e ui: test plain mode against exceptions
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
parents: 13849
diff changeset
   199
  plain: True
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   200
  read config from: $TESTTMP/hgrc
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   201
  repo: bundle.mainreporoot=$TESTTMP
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   202
  $TESTTMP/hgrc:15: extensions.plain=./plain.py
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   203
  --config: ui.traceback=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   204
  --verbose: ui.verbose=False
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   205
  --debug: ui.debug=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   206
  --quiet: ui.quiet=False
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   207
  $ HGPLAINEXCEPT=i18n; export HGPLAINEXCEPT
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   208
  $ hg showconfig --config ui.traceback=True --debug
14372
be0daa0eeb3e ui: test plain mode against exceptions
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
parents: 13849
diff changeset
   209
  plain: True
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   210
  read config from: $TESTTMP/hgrc
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   211
  repo: bundle.mainreporoot=$TESTTMP
13849
9f97de157aad HGPLAIN: allow exceptions to plain mode, like i18n, via HGPLAINEXCEPT
Brodie Rao <brodie@bitheap.org>
parents: 13572
diff changeset
   212
  $TESTTMP/hgrc:15: extensions.plain=./plain.py
20788
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   213
  --config: ui.traceback=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   214
  --verbose: ui.verbose=False
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   215
  --debug: ui.debug=True
f144928dd058 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com>
parents: 20227
diff changeset
   216
  --quiet: ui.quiet=False
20789
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   217
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   218
source of paths is not mangled
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   219
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   220
  $ cat >> $HGRCPATH <<EOF
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   221
  > [paths]
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   222
  > foo = bar
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   223
  > EOF
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   224
  $ hg showconfig --debug paths
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   225
  plain: True
d19c9bdbbf35 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com>
parents: 20788
diff changeset
   226
  read config from: $TESTTMP/hgrc
23056
d898c7e8c301 tests: add "(glob)" to paths in test-hgrc.t for Windows
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22947
diff changeset
   227
  $TESTTMP/hgrc:17: paths.foo=$TESTTMP/bar (glob)