##// END OF EJS Templates
tests: unify test-template-engine
Matt Mackall -
r12493:dc6b9b3b default
parent child Browse files
Show More
@@ -1,39 +1,37 b''
1 #!/bin/sh
2 1
3 cat > engine.py << EOF
4
5 from mercurial import templater
6
7 class mytemplater(object):
8 def __init__(self, loader, filters, defaults):
9 self.loader = loader
10
11 def process(self, t, map):
12 tmpl = self.loader(t)
13 for k, v in map.iteritems():
14 if k in ('templ', 'ctx', 'repo', 'revcache', 'cache'):
15 continue
16 if hasattr(v, '__call__'):
17 v = v(**map)
18 v = templater.stringify(v)
19 tmpl = tmpl.replace('{{%s}}' % k, v)
20 yield tmpl
21
22 templater.engines['my'] = mytemplater
23 EOF
24
25 hg init test
26 echo '[extensions]' > test/.hg/hgrc
27 echo "engine = `pwd`/engine.py" >> test/.hg/hgrc
28
29 cd test
30 cat > mymap << EOF
31 changeset = my:changeset.txt
32 EOF
33
34 cat > changeset.txt << EOF
35 {{rev}} {{node}} {{author}}
36 EOF
37
38 hg ci -Ama
39 hg log --style=./mymap
2 $ cat > engine.py << EOF
3 >
4 > from mercurial import templater
5 >
6 > class mytemplater(object):
7 > def __init__(self, loader, filters, defaults):
8 > self.loader = loader
9 >
10 > def process(self, t, map):
11 > tmpl = self.loader(t)
12 > for k, v in map.iteritems():
13 > if k in ('templ', 'ctx', 'repo', 'revcache', 'cache'):
14 > continue
15 > if hasattr(v, '__call__'):
16 > v = v(**map)
17 > v = templater.stringify(v)
18 > tmpl = tmpl.replace('{{%s}}' % k, v)
19 > yield tmpl
20 >
21 > templater.engines['my'] = mytemplater
22 > EOF
23 $ hg init test
24 $ echo '[extensions]' > test/.hg/hgrc
25 $ echo "engine = `pwd`/engine.py" >> test/.hg/hgrc
26 $ cd test
27 $ cat > mymap << EOF
28 > changeset = my:changeset.txt
29 > EOF
30 $ cat > changeset.txt << EOF
31 > {{rev}} {{node}} {{author}}
32 > EOF
33 $ hg ci -Ama
34 adding changeset.txt
35 adding mymap
36 $ hg log --style=./mymap
37 0 97e5f848f0936960273bbf75be6388cd0350a32b test
1 NO CONTENT: file was removed
General Comments 0
You need to be logged in to leave comments. Login now