##// END OF EJS Templates
py3: conditionalize _winreg import...
py3: conditionalize _winreg import _winreg module is renamed to winreg in python 3. Added the conditionalize statements in the respective file because adding this in pycompat will result in pycompat throwing error as this is a windows registry module and we have buildbots and most of the contributors on linux.

File last commit:

r28957:d813132e default
r29760:3df9f780 default
Show More
test-template-engine.t
54 lines | 1.5 KiB | text/troff | Tads3Lexer
/ tests / test-template-engine.t
$ cat > engine.py << EOF
>
> from mercurial import templater
>
> class mytemplater(object):
> def __init__(self, loader, filters, defaults, aliases):
> 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
$ cat > changeset.txt << EOF
> {{p1rev}} {{p1node}} {{p2rev}} {{p2node}}
> EOF
$ hg ci -Ama
$ hg log --style=./mymap
0 97e5f848f0936960273bbf75be6388cd0350a32b -1 0000000000000000000000000000000000000000
-1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000
invalid engine type:
$ echo 'changeset = unknown:changeset.txt' > unknownenginemap
$ hg log --style=./unknownenginemap
abort: invalid template engine: unknown
[255]
$ cd ..