tests/test-mq-qimport-fail-cleanup.t
author Matt Mackall <mpm@selenic.com>
Mon, 30 Jan 2012 16:01:54 -0600
branchstable
changeset 16039 093b75c7b44b
parent 15704 8857e150bec0
child 16107 a3dcc59054ca
permissions -rw-r--r--
pull: return 1 when no changes found (BC) Currently we have the following return codes if nothing is found: commit incoming outgoing pull push intended 1 1 1 1 1 documented 1 1 1 0 1 actual 1 1 1 0 1 This makes pull agree with the rest of the table and makes it easy to detect "nothing was pulled" in scripts.

Failed qimport of patches from files should cleanup by recording successfully
imported patches in series file.

  $ echo "[extensions]" >> $HGRCPATH
  $ echo "mq=" >> $HGRCPATH
  $ hg init repo
  $ cd repo
  $ echo a > a
  $ hg ci -Am'add a'
  adding a
  $ cat >b.patch<<EOF
  > diff --git a/a b/a
  > --- a/a
  > +++ b/a
  > @@ -1,1 +1,2 @@
  >  a
  > +b
  > EOF

empty series

  $ hg qseries

qimport valid patch followed by invalid patch

  $ hg qimport b.patch fakepatch
  adding b.patch to series file
  abort: unable to read file fakepatch
  [255]

valid patches before fail added to series

  $ hg qseries
  b.patch

  $ hg pull -q -r 0 . # update phase
  [1]
  $ hg qimport -r 0
  abort: revision 0 is not mutable
  (see "hg help phases" for details)
  [255]