Mercurial > hg
view tests/test-issue2137 @ 10955:470a6ace7574
Added support for 'pretxncommit', so that one can call the ACL hook at
pre-commit time too. This is useful because now it's possible to avoid
violating ACL permissions much sooner, at commit time, instead of
waiting for a PUSH to check if there were any invalid commits.
author | Elifarley Callado Coelho Cruz <elifarley@gmail.com> |
---|---|
date | Tue, 06 Apr 2010 22:15:43 -0300 |
parents | bce47e253b61 |
children | 6bbe4886740e |
line wrap: on
line source
#!/bin/sh echo "% setup" # create a little extension that has 3 side-effects: # 1) ensure changelog data is not inlined # 2) make revlog to use lazyparser # 3) test that repo.lookup() works # 1 and 2 are preconditions for the bug; 3 is the bug. cat > commitwrapper.py <<EOF from mercurial import extensions, node, revlog def reposetup(ui, repo): def wrapcommit(orig, *args, **kwargs): result = orig(*args, **kwargs) tip1 = node.short(repo.changelog.tip()) tip2 = node.short(repo.lookup(tip1)) assert tip1 == tip2 ui.write('new tip: %s\n' % tip1) return result extensions.wrapfunction(repo, 'commit', wrapcommit) def extsetup(ui): revlog._maxinline = 8 # split out 00changelog.d early revlog._prereadsize = 8 # use revlog.lazyparser EOF cat >> $HGRCPATH <<EOF [extensions] commitwrapper = $PWD/commitwrapper.py EOF hg init repo1 cd repo1 echo a > a hg commit -A -m'add a with a long commit message to make the changelog a bit bigger' echo "" echo "% test that new changesets are visible to repo.lookup()" echo a >> a hg commit -m'one more commit to demonstrate the bug' hg tip