Mercurial > hg
view tests/test-incoming-outgoing @ 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 | ace3cf2bc991 |
children |
line wrap: on
line source
#!/bin/sh mkdir test cd test hg init for i in 0 1 2 3 4 5 6 7 8; do echo $i >> foo hg commit -A -m $i -d "1000000 0" done hg verify hg serve -p $HGPORT -d --pid-file=hg.pid cat hg.pid >> $DAEMON_PIDS cd .. hg init new # http incoming hg -R new incoming http://localhost:$HGPORT/ | sed -e "s,:$HGPORT/,:\$HGPORT/," hg -R new incoming -r 4 http://localhost:$HGPORT/ | sed -e "s,:$HGPORT/,:\$HGPORT/," # local incoming hg -R new incoming test hg -R new incoming -r 4 test echo "% limit to 2 changesets" hg -R new incoming -l 2 test echo "% limit to 2 changesets, test with -p --git" hg -R new incoming -l 2 -p --git test # test with --bundle hg -R new incoming --bundle test.hg http://localhost:$HGPORT/ | sed -e "s,:$HGPORT/,:\$HGPORT/," hg -R new incoming --bundle test2.hg test # test the resulting bundles hg init temp hg init temp2 hg -R temp unbundle test.hg hg -R temp2 unbundle test2.hg hg -R temp tip hg -R temp2 tip rm -r temp temp2 new # test outgoing hg clone test test-dev cd test-dev for i in 9 10 11 12 13; do echo $i >> foo hg commit -A -m $i -d "1000000 0" done hg verify cd .. hg -R test-dev outgoing test echo "% limit to 3 changesets" hg -R test-dev outgoing -l 3 test hg -R test-dev outgoing http://localhost:$HGPORT/ | sed -e "s,:$HGPORT/,:\$HGPORT/," hg -R test-dev outgoing -r 11 http://localhost:$HGPORT/ | sed -e "s,:$HGPORT/,:\$HGPORT/,"