view tests/test-rebase-detach.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 7a9cf012dddc
children
line wrap: on
line source

@  4: E
|
| o  3: D
| |
| o  2: C
| |
| o  1: B
|/
o  0: A

% Rebasing D onto E detaching from C
saved backup bundle to 
@  4: D
|
o  3: E
|
| o  2: C
| |
| o  1: B
|/
o  0: A

Expected A, D, E
A
D
E

@  4: E
|
| o  3: D
| |
| o  2: C
| |
| o  1: B
|/
o  0: A

% Rebasing C onto E detaching from B
saved backup bundle to 
@  4: D
|
o  3: C
|
o  2: E
|
| o  1: B
|/
o  0: A

Expected A, C, D, E
A
C
D
E

@  4: E
|
| o  3: D
| |
| o  2: C
| |
| o  1: B
|/
o  0: A

% Rebasing B onto E using detach (same as not using it)
saved backup bundle to 
@  4: D
|
o  3: C
|
o  2: B
|
o  1: E
|
o  0: A

Expected A, B, C, D, E
A
B
C
D
E

@  4: E
|
| o  3: D
| |
| o  2: C
| |
| o  1: B
|/
o  0: A

% Rebasing C onto E detaching from B and collapsing
saved backup bundle to 
@  3: Collapsed revision
|  * C
|  * D
o  2: E
|
| o  1: B
|/
o  0: A

Expected A, C, D, E
A
C
D
E