Mercurial > hg
annotate tests/test-ui-verbosity.py @ 26345:2aa0dde846b4
mq: remove a mutable default argument
Mutable default arguments are know to the state of California to cause bugs. The
underlying function already handle "None" as an option value, so we do not need
to do anything else.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Thu, 24 Sep 2015 00:50:06 -0700 |
parents | 4c50552fc9bc |
children | 870dae78234c |
rev | line source |
---|---|
3349
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
1 import os |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
2 from mercurial import ui |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
3 |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
4 hgrc = os.environ['HGRCPATH'] |
5523
5db730475d6d
tests/*: avoid losing the original settings from $HGRCPATH
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3349
diff
changeset
|
5 f = open(hgrc) |
5db730475d6d
tests/*: avoid losing the original settings from $HGRCPATH
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3349
diff
changeset
|
6 basehgrc = f.read() |
5db730475d6d
tests/*: avoid losing the original settings from $HGRCPATH
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3349
diff
changeset
|
7 f.close() |
3349
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
8 |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
9 print ' hgrc settings command line options final result ' |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
10 print ' quiet verbo debug quiet verbo debug quiet verbo debug' |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
11 |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
12 for i in xrange(64): |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
13 hgrc_quiet = bool(i & 1<<0) |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
14 hgrc_verbose = bool(i & 1<<1) |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
15 hgrc_debug = bool(i & 1<<2) |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
16 cmd_quiet = bool(i & 1<<3) |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
17 cmd_verbose = bool(i & 1<<4) |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
18 cmd_debug = bool(i & 1<<5) |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
19 |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
20 f = open(hgrc, 'w') |
5523
5db730475d6d
tests/*: avoid losing the original settings from $HGRCPATH
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3349
diff
changeset
|
21 f.write(basehgrc) |
5db730475d6d
tests/*: avoid losing the original settings from $HGRCPATH
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3349
diff
changeset
|
22 f.write('\n[ui]\n') |
3349
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
23 if hgrc_quiet: |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
24 f.write('quiet = True\n') |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
25 if hgrc_verbose: |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
26 f.write('verbose = True\n') |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
27 if hgrc_debug: |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
28 f.write('debug = True\n') |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
29 f.close() |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
30 |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
31 u = ui.ui() |
8136
6b5522cb2ad2
ui: refactor option setting
Matt Mackall <mpm@selenic.com>
parents:
5523
diff
changeset
|
32 if cmd_quiet or cmd_debug or cmd_verbose: |
6b5522cb2ad2
ui: refactor option setting
Matt Mackall <mpm@selenic.com>
parents:
5523
diff
changeset
|
33 u.setconfig('ui', 'quiet', str(bool(cmd_quiet))) |
6b5522cb2ad2
ui: refactor option setting
Matt Mackall <mpm@selenic.com>
parents:
5523
diff
changeset
|
34 u.setconfig('ui', 'verbose', str(bool(cmd_verbose))) |
6b5522cb2ad2
ui: refactor option setting
Matt Mackall <mpm@selenic.com>
parents:
5523
diff
changeset
|
35 u.setconfig('ui', 'debug', str(bool(cmd_debug))) |
3349
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
36 |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
37 check = '' |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
38 if u.debugflag: |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
39 if not u.verbose or u.quiet: |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
40 check = ' *' |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
41 elif u.verbose and u.quiet: |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
42 check = ' +' |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
43 |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
44 print ('%2d %5s %5s %5s %5s %5s %5s -> %5s %5s %5s%s' |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
45 % (i, hgrc_quiet, hgrc_verbose, hgrc_debug, |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
46 cmd_quiet, cmd_verbose, cmd_debug, |
25d270e0b27f
ui.py: untangle updateopts
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
47 u.quiet, u.verbose, u.debugflag, check)) |