Mercurial > hg
view tests/test-template-engine.t @ 24845:8133494accf1 stable
record: edit patch of newly added files (issue4304)
I tried to fix this issue in the past and had to revert the fix. This is a
second attempt without the regression we found with the first one.
record defines special headers (of file) as headers whose hunk are not shown
to the user for editing, they are used to represent deleted, moved and new
files. Since we want to authorize editing the patch of newly added file we
make the newly added file with some content not special anymore. This entails
that we have to save their content before applying the backup to be able to
revert it if the patch does not apply properly.
We reintroduce the test showing that newly added files can be edited and that
their content is shown to the user.
author | Laurent Charignon <lcharignon@fb.com> |
---|---|
date | Thu, 23 Apr 2015 14:27:26 -0700 |
parents | 2917f82f6040 |
children | f580c78ea667 |
line wrap: on
line source
$ 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 $ cat > changeset.txt << EOF > {{p1rev}} {{p1node}} {{p2rev}} {{p2node}} > EOF $ hg ci -Ama $ hg log --style=./mymap 0 97e5f848f0936960273bbf75be6388cd0350a32b -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 $ cd ..