view tests/test-abort-checkin.t @ 24267:365fdbc54f1f

histedit: remove extra histedit constructor call In a previous commit we removed the extra histedit object instance being constructed in --continue and --abort. The new --edit-todo missed this fix though (which means the state object it produces doesn't have the locks on it). It's not breaking anything now, but let's go ahead and clean that up before we forget.
author Durham Goode <durham@fb.com>
date Wed, 11 Mar 2015 07:19:55 -0700
parents e955549cd045
children 56b2bcea2529
line wrap: on
line source

  $ 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

  $ cat <<EOF >> $HGRCPATH
  > [extensions]
  > mq =
  > abortcommit = $abspath
  > EOF

  $ hg init foo
  $ cd foo
  $ echo foo > foo
  $ hg add foo

mq may keep a reference to the repository so __del__ will not be
called and .hg/journal.dirstate will not be deleted:

  $ hg ci -m foo
  error: pretxncommit.nocommits hook failed: no commits allowed
  transaction abort!
  rollback completed
  abort: no commits allowed
  [255]
  $ hg ci -m foo
  error: pretxncommit.nocommits hook failed: no commits allowed
  transaction abort!
  rollback completed
  abort: no commits allowed
  [255]

  $ cd ..