tests/test-template-engine.t
changeset 12493 dc6b9b3bf63e
parent 10057 babc00a82c5e
child 16913 f2719b387380
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-template-engine.t	Sun Sep 26 13:44:49 2010 -0500
@@ -0,0 +1,37 @@
+
+  $ 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():
+  >             if k in ('templ', 'ctx', 'repo', 'revcache', 'cache'):
+  >                 continue
+  >             if hasattr(v, '__call__'):
+  >                 v = v(**map)
+  >             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
+  $ echo "engine = `pwd`/engine.py" >> test/.hg/hgrc
+  $ cd test
+  $ cat > mymap << EOF
+  > changeset = my:changeset.txt
+  > EOF
+  $ cat > changeset.txt << EOF
+  > {{rev}} {{node}} {{author}}
+  > EOF
+  $ hg ci -Ama
+  adding changeset.txt
+  adding mymap
+  $ hg log --style=./mymap
+  0 97e5f848f0936960273bbf75be6388cd0350a32b test