##// END OF EJS Templates
lfs: allow non-lfs exchanges when the extension is only enabled on one side...
lfs: allow non-lfs exchanges when the extension is only enabled on one side Once the 'lfs' requirement is added, the extension must be loaded on both sides, and changegroup3 used. But there's no reason that I can see for bailing with cryptic errors if lfs is not required, but randomly enabled somewhere.

File last commit:

r35499:817a3d20 default
r35521:2526579a default
Show More
test-template-engine.t
60 lines | 1.8 KiB | text/troff | Tads3Lexer
/ tests / test-template-engine.t
Matt Mackall
tests: unify test-template-engine
r12493
$ cat > engine.py << EOF
>
> from mercurial import templater
>
> class mytemplater(object):
Yuya Nishihara
templater: keep default resources per template engine (API)...
r35484 > def __init__(self, loader, filters, defaults, resources, aliases):
Matt Mackall
tests: unify test-template-engine
r12493 > self.loader = loader
Yuya Nishihara
templater: register keywords to defaults table...
r35499 > self._defaults = defaults
Yuya Nishihara
templater: keep default resources per template engine (API)...
r35484 > self._resources = resources
Matt Mackall
tests: unify test-template-engine
r12493 >
> def process(self, t, map):
> tmpl = self.loader(t)
Yuya Nishihara
templater: register keywords to defaults table...
r35499 > props = self._defaults.copy()
> props.update(map)
> for k, v in props.iteritems():
Boris Feld
template: rename troubles templatekw into instabilities...
r33675 > if k in ('templ', 'ctx', 'repo', 'revcache', 'cache', 'troubles'):
Matt Mackall
tests: unify test-template-engine
r12493 > continue
> if hasattr(v, '__call__'):
Yuya Nishihara
templater: keep default resources per template engine (API)...
r35484 > props = self._resources.copy()
> props.update(map)
> v = v(**props)
Matt Mackall
tests: unify test-template-engine
r12493 > 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
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
epriestley
templatekw: add parent1, parent1node, parent2, parent2node keywords...
r17355 $ cat > changeset.txt << EOF
Bryan O'Sullivan
templatekw: merge, preferring the second implementation
r17358 > {{p1rev}} {{p1node}} {{p2rev}} {{p2node}}
epriestley
templatekw: add parent1, parent1node, parent2, parent2node keywords...
r17355 > EOF
$ hg ci -Ama
$ hg log --style=./mymap
0 97e5f848f0936960273bbf75be6388cd0350a32b -1 0000000000000000000000000000000000000000
-1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000
Yuya Nishihara
templater: give better error message for invalid engine type...
r28831 invalid engine type:
$ echo 'changeset = unknown:changeset.txt' > unknownenginemap
$ hg log --style=./unknownenginemap
abort: invalid template engine: unknown
[255]
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..