Mercurial > hg
view tests/test-ui-color.py @ 41152:191fac9ff9d3
obsutil: fix the issue5686
While traversing the obsolescence graph to find the successors sets
of csets:
In its 4th case (read comments of obsutil.successorssets to see
all 4 cases) where we know successors sets of all direct successors
of CURRENT, we were just missing a condition to filter out the case
when a cset is pruned.
And without this condition (that this patch added) it was making a whole
successor set to [] just because of one pruned marker.
For e.g:if following is the successors set of a cset A:
A -> [a, b, c]
if we prune c, we expect A's successors set to be [a, b] but
you would get:
A -> []
So this patch make sure that we calculate the right successorsset of csets
considering the pruned cset (in split case).
Differential Revision: https://phab.mercurial-scm.org/D5474
author | Sushil khanchi <sushilkhanchi97@gmail.com> |
---|---|
date | Sun, 23 Dec 2018 02:01:35 +0530 |
parents | 32bc3815efae |
children | 2372284d9457 |
line wrap: on
line source
from __future__ import absolute_import, print_function import os from mercurial import ( dispatch, ui as uimod, ) from mercurial.utils import ( stringutil, ) # ensure errors aren't buffered testui = uimod.ui() testui.pushbuffer() testui.write((b'buffered\n')) testui.warn((b'warning\n')) testui.write_err(b'error\n') print(stringutil.pprint(testui.popbuffer(), bprefix=True).decode('ascii')) # test dispatch.dispatch with the same ui object hgrc = open(os.environ["HGRCPATH"], 'wb') hgrc.write(b'[extensions]\n') hgrc.write(b'color=\n') hgrc.close() ui_ = uimod.ui.load() ui_.setconfig(b'ui', b'formatted', b'True') # we're not interested in the output, so write that to devnull ui_.fout = open(os.devnull, 'wb') # call some arbitrary command just so we go through # color's wrapped _runcommand twice. def runcmd(): dispatch.dispatch(dispatch.request([b'version', b'-q'], ui_)) runcmd() print("colored? %s" % (ui_._colormode is not None)) runcmd() print("colored? %s" % (ui_._colormode is not None))