annotate tests/test-ui-color.py @ 26000:9ac4e81b9659 stable

match: fix a caseonly rename + explicit path commit on icasefs (issue4768) The problem was that the former name and the new name are both normalized to the case in dirstate, so matcher._files would be ['ABC.txt', 'ABC.txt']. localrepo.commit() calls localrepo.status(), passing along the matcher. Inside dirstate.status(), _walkexplicit() simply grabs matcher.files() and processes those items. Since the old name isn't present, it is silently dropped. There's a fundamental tension here, because the status command should also accept files that don't match the filesystem, so we can't drop the normalization in status. The problem originated in baa11dde8c0e. Unfortunately with this change, the case of the old file must still be specified exactly, or the old file is again silently excluded. I went back to baa11dde8c0e^, and that had the same behavior, so we are no worse off. I'm open to ideas from a matcher or dirstate expert on how to fix that half.
author Matt Harbison <matt_harbison@yahoo.com>
date Thu, 06 Aug 2015 21:00:16 -0400
parents ff1586a3adc5
children 2e5be704bc96
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19322
ff1586a3adc5 cleanup: remove unused imports
Simon Heimberg <simohe@besonet.ch>
parents: 17956
diff changeset
1 import os
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
2 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
3 from mercurial import dispatch, ui
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
4
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
5 # ensure errors aren't buffered
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
6 testui = color.colorui()
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
7 testui.pushbuffer()
17956
a08775ec89f2 i18n: wrap false positives for translation detection
Matt Mackall <mpm@selenic.com>
parents: 14614
diff changeset
8 testui.write(('buffered\n'))
a08775ec89f2 i18n: wrap false positives for translation detection
Matt Mackall <mpm@selenic.com>
parents: 14614
diff changeset
9 testui.warn(('warning\n'))
11732
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
10 testui.write_err('error\n')
386e56ecfb78 color: call correct superclass method in write_err
Brodie Rao <brodie@bitheap.org>
parents:
diff changeset
11 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
12
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
13 # 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
14 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
15 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
16 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
17 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
18
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
19 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
20 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
21
14614
afccc64eea73 ui: use I/O descriptors internally
Idan Kamara <idankk86@gmail.com>
parents: 14516
diff changeset
22 # 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
23 ui_.fout = open(os.devnull, 'w')
afccc64eea73 ui: use I/O descriptors internally
Idan Kamara <idankk86@gmail.com>
parents: 14516
diff changeset
24
14516
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
25 # 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
26 # 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
27 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
28 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
29
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
30 runcmd()
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
31 print "colored? " + str(issubclass(ui_.__class__, color.colorui))
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
32 runcmd()
842a9179132c color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com>
parents: 12865
diff changeset
33 print "colored? " + str(issubclass(ui_.__class__, color.colorui))