test-template-engine
39 lines
| 839 B
| text/plain
|
TextLexer
/ tests / test-template-engine
Dirkjan Ochtman
|
r8361 | #!/bin/sh | ||
cat > engine.py << EOF | ||||
from mercurial import templater | ||||
class mytemplater(object): | ||||
def __init__(self, loader, filters, defaults): | ||||
self.loader = loader | ||||
def process(self, t, map): | ||||
tmpl = self.loader(t) | ||||
for k, v in map.iteritems(): | ||||
Patrick Mezard
|
r10057 | if k in ('templ', 'ctx', 'repo', 'revcache', 'cache'): | ||
Patrick Mezard
|
r10054 | continue | ||
if hasattr(v, '__call__'): | ||||
v = v(**map) | ||||
Dirkjan Ochtman
|
r8361 | v = templater.stringify(v) | ||
tmpl = tmpl.replace('{{%s}}' % k, v) | ||||
yield tmpl | ||||
templater.engines['my'] = mytemplater | ||||
EOF | ||||
hg init test | ||||
echo '[extensions]' > test/.hg/hgrc | ||||
David Champion
|
r9044 | echo "engine = `pwd`/engine.py" >> test/.hg/hgrc | ||
Dirkjan Ochtman
|
r8361 | |||
cd test | ||||
cat > mymap << EOF | ||||
changeset = my:changeset.txt | ||||
EOF | ||||
cat > changeset.txt << EOF | ||||
{{rev}} {{node}} {{author}} | ||||
EOF | ||||
hg ci -Ama | ||||
hg log --style=./mymap | ||||