tests/test-mq-qimport-fail-cleanup.t
author Yuya Nishihara <yuya@tcha.org>
Sun, 10 Jun 2018 16:08:58 +0900
changeset 38581 9f9ffe5f687c
parent 29972 0342bf292f73
permissions -rw-r--r--
match: compose 'set:' pattern as matcher Baby step towards porting fileset to matcher composition. We can't use the exactmatcher since it would provide a computed set as exact paths. That's why we use the predicatematcher with fset.__contains__. This will be cleaned up later. The test change in test-glog.t means that the "set:copied()" pattern is no longer be processed as a slow path. That's because the fset is empty. This will also change in future patches.

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
  $ hg qimport -r 0
  abort: revision 0 is not mutable
  (see 'hg help phases' for details)
  [255]

  $ cd ..