tests/test-ui-color.py
author Raphaël Gomès <rgomes@octobus.net>
Thu, 06 Jul 2023 11:17:55 +0200
changeset 50805 58aa5ee9c846
parent 48966 6000f5b25c9b
child 51749 493034cc3265
permissions -rw-r--r--
rust-blackbox: use `is_extension_enabled` config helper It's there, may as well use it to make the code clearer and less bug-prone.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
19322
ff1586a3adc5 cleanup: remove unused imports
Simon Heimberg <simohe@besonet.ch>
parents: 17956
diff changeset
     1
import os
28915
40afa22bee9b tests: make test-ui-color use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents: 28682
diff changeset
     2
from mercurial import (
40afa22bee9b tests: make test-ui-color use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents: 28682
diff changeset
     3
    dispatch,
40afa22bee9b tests: make test-ui-color use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents: 28682
diff changeset
     4
    ui as uimod,
40afa22bee9b tests: make test-ui-color use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents: 28682
diff changeset
     5
)
43076
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 37986
diff changeset
     6
from mercurial.utils import stringutil
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
     7
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
     8
# ensure errors aren't buffered
31112
b4cb86ab4c71 color: drop the 'colorui' class
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30564
diff changeset
     9
testui = uimod.ui()
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
    10
testui.pushbuffer()
43080
86e4daa2d54c cleanup: mark some ui.(status|note|warn|write) calls as not needing i18n
Augie Fackler <augie@google.com>
parents: 43076
diff changeset
    11
testui.writenoi18n(b'buffered\n')
86e4daa2d54c cleanup: mark some ui.(status|note|warn|write) calls as not needing i18n
Augie Fackler <augie@google.com>
parents: 43076
diff changeset
    12
testui.warnnoi18n(b'warning\n')
36369
236596a67a54 py3: add b'' to test-ui-color.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31112
diff changeset
    13
testui.write_err(b'error\n')
37986
32bc3815efae stringutil: flip the default of pprint() to bprefix=False
Yuya Nishihara <yuya@tcha.org>
parents: 37969
diff changeset
    14
print(stringutil.pprint(testui.popbuffer(), bprefix=True).decode('ascii'))
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    15
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    16
# test dispatch.dispatch with the same ui object
36370
0f36926b2651 py3: make sure we open file in bytes mode
Pulkit Goyal <7895pulkit@gmail.com>
parents: 36369
diff changeset
    17
hgrc = open(os.environ["HGRCPATH"], 'wb')
36369
236596a67a54 py3: add b'' to test-ui-color.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31112
diff changeset
    18
hgrc.write(b'[extensions]\n')
236596a67a54 py3: add b'' to test-ui-color.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31112
diff changeset
    19
hgrc.write(b'color=\n')
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    20
hgrc.close()
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    21
30564
d83ca854fa21 ui: factor out ui.load() to create a ui without loading configs (API)
Yuya Nishihara <yuya@tcha.org>
parents: 28915
diff changeset
    22
ui_ = uimod.ui.load()
36369
236596a67a54 py3: add b'' to test-ui-color.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31112
diff changeset
    23
ui_.setconfig(b'ui', b'formatted', b'True')
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    24
14614
afccc64eea73 ui: use I/O descriptors internally
Idan Kamara <idankk86@gmail.com>
parents: 14516
diff changeset
    25
# we're not interested in the output, so write that to devnull
36370
0f36926b2651 py3: make sure we open file in bytes mode
Pulkit Goyal <7895pulkit@gmail.com>
parents: 36369
diff changeset
    26
ui_.fout = open(os.devnull, 'wb')
14614
afccc64eea73 ui: use I/O descriptors internally
Idan Kamara <idankk86@gmail.com>
parents: 14516
diff changeset
    27
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    28
# call some arbitrary command just so we go through
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    29
# color's wrapped _runcommand twice.
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    30
def runcmd():
36369
236596a67a54 py3: add b'' to test-ui-color.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31112
diff changeset
    31
    dispatch.dispatch(dispatch.request([b'version', b'-q'], ui_))
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    32
43076
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 37986
diff changeset
    33
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    34
runcmd()
31112
b4cb86ab4c71 color: drop the 'colorui' class
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30564
diff changeset
    35
print("colored? %s" % (ui_._colormode is not None))
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    36
runcmd()
31112
b4cb86ab4c71 color: drop the 'colorui' class
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30564
diff changeset
    37
print("colored? %s" % (ui_._colormode is not None))