annotate tests/test-subrepo-paths.t @ 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 79bd860b8eb7
children 4134686b83e1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
1 $ hg init outer
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
2 $ cd outer
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
3
11959
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
4 hg debugsub with no remapping
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
5
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
6 $ echo 'sub = http://example.net/libfoo' > .hgsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
7 $ hg add .hgsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
8
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
9 $ hg debugsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
10 path sub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
11 source http://example.net/libfoo
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
12 revision
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
13
11959
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
14 hg debugsub with remapping
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
15
11961
f3075ffa6b30 subrepos: handle backslashes in subpaths
Martin Geisler <mg@lazybytes.net>
parents: 11959
diff changeset
16 $ echo '[subpaths]' > .hg/hgrc
11964
79bd860b8eb7 test-subrepo-paths: use printf instead of echo
Martin Geisler <mg@lazybytes.net>
parents: 11961
diff changeset
17 $ printf 'http://example.net/lib(.*) = C:\\libs\\\\1-lib\\\n' >> .hg/hgrc
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
18
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
19 $ hg debugsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
20 path sub
11961
f3075ffa6b30 subrepos: handle backslashes in subpaths
Martin Geisler <mg@lazybytes.net>
parents: 11959
diff changeset
21 source C:\libs\foo-lib\
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
22 revision
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
23
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
24 test bad subpaths pattern
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
25
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
26 $ cat > .hg/hgrc <<EOF
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
27 > [subpaths]
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
28 > .* = \1
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
29 > EOF
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
30 $ hg debugsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
31 abort: bad subrepository pattern in .*/test-subrepo-paths.t/outer/.hg/hgrc:2: invalid group reference
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
32
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
33 $ exit 0