view tests/test-convert-darcs.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 f2618cacb485
children 4481f8a93c7a
line wrap: on
line source

% initialize darcs repo
Finished recording patch 'p0'
% branch and update
Finished recording patch 'p1.1'
% update source
Finished recording patch 'p1.2'
% merge branch
Backing up ./a(-darcs-backup0)
We have conflicts in the following files:
./a
Finished pulling and applying.
Finished recording patch 'p2'
% test file and directory move
Finished recording patch 'p3'
initializing destination darcs-repo-hg repository
scanning source...
sorting...
converting...
4 p0
3 p1.2
2 p1.1
1 p2
0 p3
o  4 "p3" files: dir/d dir/d2 dir2/d f ff
|
o  3 "p2" files: a dir/d dir/d2 f
|
o  2 "p1.1" files:
|
o  1 "p1.2" files: a b
|
o  0 "p0" files: a

7225b30cdf38257d5cc7780772c051b6f33e6d6b 644   a
1e88685f5ddec574a34c70af492f95b6debc8741 644   b
37406831adc447ec2385014019599dfec953c806 644   dir2/d
b783a337463792a5c7d548ad85a7d3253c16ba8c 644   ff