Mercurial > hg-stable
changeset 4140:193e0f8d9a47
test-abort-checkin: use a hook to abort the commit
This should make it more portable.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sun, 04 Mar 2007 14:35:11 -0300 |
parents | efe6f92c0847 |
children | 03e9c22a6489 |
files | tests/test-abort-checkin tests/test-abort-checkin.out |
diffstat | 2 files changed, 18 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-abort-checkin Sun Mar 04 14:09:29 2007 -0300 +++ b/tests/test-abort-checkin Sun Mar 04 14:35:11 2007 -0300 @@ -1,12 +1,19 @@ #!/bin/sh +cat > abortcommit.py <<EOF +from mercurial import util + +def hook(**args): + raise util.Abort("no commits allowed") + +def reposetup(ui, repo): + repo.ui.setconfig("hooks", "pretxncommit.nocommits", hook) +EOF +abspath=`pwd`/abortcommit.py + echo "[extensions]" >> $HGRCPATH echo "mq=" >> $HGRCPATH -cat > $HGTMP/false <<EOF -#!/bin/sh -exit 1 -EOF -chmod +x $HGTMP/false +echo "abortcommit = $abspath" >> $HGRCPATH hg init foo cd foo @@ -15,7 +22,7 @@ # mq may keep a reference to the repository so __del__ will not be called # and .hg/journal.dirstate will not be deleted: -HGEDITOR=$HGTMP/false hg ci -HGEDITOR=$HGTMP/false hg ci +hg ci -m foo +hg ci -m foo exit 0
--- a/tests/test-abort-checkin.out Sun Mar 04 14:09:29 2007 -0300 +++ b/tests/test-abort-checkin.out Sun Mar 04 14:35:11 2007 -0300 @@ -1,6 +1,8 @@ -abort: edit failed: false exited with status 1 +error: pretxncommit.nocommits hook failed: no commits allowed +abort: no commits allowed transaction abort! rollback completed -abort: edit failed: false exited with status 1 +error: pretxncommit.nocommits hook failed: no commits allowed +abort: no commits allowed transaction abort! rollback completed