Mercurial > hg
view tests/test-lrucachedict.py @ 23968:6564ec382560 stable
mergetools: drop incorrect quoting of diffargs variables
72a89cf86fcd introduced automatic quoting of diffargs in a not entirely
backwards compatible way. That rendered some of the configuration in
mergetools.rc invalid. It would fail when running extdiff on a single file with
a name that needed quoting.
Before:
$ hg config merge-tools.meld.diffargs
-a --label='$plabel1' $parent --label='$clabel' $child
$ hg --config extdiff.meld= -v --debug meld
running "/usr/bin/meld -a --label=''sp ace@0'' '.../Z.b7a65a1d2f84/sp ace' --label=''sp ace'' '.../sp ace'" in ...
meld: error: too many arguments (wanted 0-3, got 4)
After:
$ hg config merge-tools.meld.diffargs
-a --label=$plabel1 $parent --label=$clabel $child
$ hg --config extdiff.meld= -v --debug meld
running "/usr/bin/meld -a --label='sp ace@0' '.../Z.b7a65a1d2f84/sp ace' --label='sp ace' '.../sp ace'" in ...
(success)
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 28 Jan 2015 02:28:38 +0100 |
parents | 887ffa22fd0d |
children | 45d996a566d7 |
line wrap: on
line source
from mercurial import util def printifpresent(d, xs): for x in xs: present = x in d print "'%s' in d: %s" % (x, present) if present: print "d['%s']: %s" % (x, d[x]) def test_lrucachedict(): d = util.lrucachedict(4) d['a'] = 'va' d['b'] = 'vb' d['c'] = 'vc' d['d'] = 'vd' # all of these should be present printifpresent(d, ['a', 'b', 'c', 'd']) # 'a' should be dropped because it was least recently used d['e'] = 've' printifpresent(d, ['a', 'b', 'c', 'd', 'e']) # touch entries in some order (get or set). d['e'] d['c'] = 'vc2' d['d'] d['b'] = 'vb2' # 'e' should be dropped now d['f'] = 'vf' printifpresent(d, ['b', 'c', 'd', 'e', 'f']) d.clear() printifpresent(d, ['b', 'c', 'd', 'e', 'f']) if __name__ == '__main__': test_lrucachedict()