tests/test-ui-color.py
author timeless <timeless@mozdev.org>
Wed, 30 Mar 2016 05:26:51 +0000
changeset 28698 c756b6791760
parent 28682 2e5be704bc96
child 28915 40afa22bee9b
permissions -rw-r--r--
py3: convert prereq bytes to string in run-tests Without this, run-tests would generate: WARNING: Did not find prerequisite tool: b'python3.5'
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
28682
2e5be704bc96 py3: make test-ui-color use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 19322
diff changeset
     1
from __future__ import print_function
19322
ff1586a3adc5 cleanup: remove unused imports
Simon Heimberg <simohe@besonet.ch>
parents: 17956
diff changeset
     2
import os
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
     3
from hgext import color
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
     4
from mercurial import dispatch, ui
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
     5
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
     6
# ensure errors aren't buffered
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
     7
testui = color.colorui()
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
     8
testui.pushbuffer()
17956
a08775ec89f2 i18n: wrap false positives for translation detection
Matt Mackall <mpm@selenic.com>
parents: 14614
diff changeset
     9
testui.write(('buffered\n'))
a08775ec89f2 i18n: wrap false positives for translation detection
Matt Mackall <mpm@selenic.com>
parents: 14614
diff changeset
    10
testui.warn(('warning\n'))
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
    11
testui.write_err('error\n')
28682
2e5be704bc96 py3: make test-ui-color use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 19322
diff changeset
    12
print(repr(testui.popbuffer()))
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    13
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    14
# test dispatch.dispatch with the same ui object
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    15
hgrc = open(os.environ["HGRCPATH"], 'w')
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    16
hgrc.write('[extensions]\n')
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    17
hgrc.write('color=\n')
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    18
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
    19
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    20
ui_ = ui.ui()
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    21
ui_.setconfig('ui', 'formatted', 'True')
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    22
14614
afccc64eea73 ui: use I/O descriptors internally
Idan Kamara <idankk86@gmail.com>
parents: 14516
diff changeset
    23
# we're not interested in the output, so write that to devnull
afccc64eea73 ui: use I/O descriptors internally
Idan Kamara <idankk86@gmail.com>
parents: 14516
diff changeset
    24
ui_.fout = open(os.devnull, 'w')
afccc64eea73 ui: use I/O descriptors internally
Idan Kamara <idankk86@gmail.com>
parents: 14516
diff changeset
    25
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    26
# 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
    27
# 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
    28
def runcmd():
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    29
    dispatch.dispatch(dispatch.request(['version', '-q'], ui_))
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    30
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    31
runcmd()
28682
2e5be704bc96 py3: make test-ui-color use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 19322
diff changeset
    32
print("colored? " + str(issubclass(ui_.__class__, color.colorui)))
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
    33
runcmd()
28682
2e5be704bc96 py3: make test-ui-color use print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 19322
diff changeset
    34
print("colored? " + str(issubclass(ui_.__class__, color.colorui)))