Mercurial > hg
view tests/test-bheads.out @ 11988:8380ed691df8
util: add an interpolate() function to for replacing multiple values
util.interpolate can be used to replace multiple items in a string all at once
(and optionally apply a function to the replacement), without worrying about
recursing:
>>> import util
>>> s = '$foo, $spam'
>>> util.interpolate(r'\$', { 'foo': 'bar', 'spam': 'eggs' }, s)
'bar, eggs'
>>> util.interpolate(r'\$', { 'foo': 'spam', 'spam': 'foo' }, s)
'spam, foo'
>>> util.interpolate(r'\$', { 'foo': 'spam', 'spam': 'foo' }, s, lambda s: s.upper())
'SPAM, FOO'
The patch also changes filemerge.py to use this new function.
author | Steve Losh <steve@stevelosh.com> |
---|---|
date | Wed, 18 Aug 2010 18:18:26 -0400 |
parents | 0a2762d83c53 |
children |
line wrap: on
line source
0: Adding root node () ------- 0: Adding root node () ======= marked working directory as branch a 1: Adding a branch (a) 0: Adding root node () ------- 1: Adding a branch (a) ======= 0 files updated, 0 files merged, 1 files removed, 0 files unresolved marked working directory as branch b 2: Adding b branch (b) 1: Adding a branch (a) 0: Adding root node () ------- 2: Adding b branch (b) ======= 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 3: Adding b branch head 1 (b) ======= 0 files updated, 0 files merged, 1 files removed, 0 files unresolved created new head 4: Adding b branch head 2 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 4: Adding b branch head 2 (b) 3: Adding b branch head 1 (b) ======= 0 files updated, 0 files merged, 1 files removed, 0 files unresolved created new head 5: Adding b branch head 3 (b) 4: Adding b branch head 2 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 5: Adding b branch head 3 (b) 4: Adding b branch head 2 (b) 3: Adding b branch head 1 (b) ======= 1 files updated, 0 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) ======= marked working directory as branch c 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 7: Adding c branch (c) ======= no open branch heads found on branches c (started at 3) 1 ------- 7: Adding c branch (c) 0 ------- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved 0 ------- 3: Adding b branch head 1 (b) 0 ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 0 ------- no open branch heads found on branches b (started at 7) 1 ======= 0 files updated, 0 files merged, 2 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 0: Adding root node () ------- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 1: Adding a branch (a) ------- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) ------- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) ------- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) ------- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) ------- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) ------- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () ------- 7: Adding c branch (c) ------- ======= 1: Adding a branch (a) ------- 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) ------- 7: Adding c branch (c) ------- abort: unknown revision 'z'! ------- ======= 7: Adding c branch (c) 6: Merging b branch head 2 and b branch head 3 (b) 3: Adding b branch head 1 (b) 1: Adding a branch (a) 0: Adding root node () % topological heads 7: Adding c branch (c) 3: Adding b branch head 1 (b) 1: Adding a branch (a) ______________ % created new head message % init: no msg adding a marked working directory as branch b adding b % case NN: msg marked working directory as branch b adding bb created new head % case HN: no msg % case BN: msg marked working directory as branch default adding aa created new head % case CN: msg adding bbb created new head % case BB: msg marked working directory as branch default created new head % case CB: msg created new head % case HB: no msg % case CC: msg created new head % case CH: no msg % case HH: no msg