tests/test-resolve.t
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
Sun, 01 Jun 2014 00:08:33 +0900
changeset 21714 635a8201e356
parent 21541 6062593d8b06
child 21721 6539c4e9c874
permissions -rw-r--r--
qfold: allow to specify '--message/'--logfile' and '--edit' at the same time Before this patch, 'hg qfold' disallows to specify '--message/'--logfile' and '--edit' at the same time. 'hg qfold' has disallowed such combination since Mercurial 0.9.2, but this restriction seems not to be reasonable for recent Mercurial, because all other commands creating new changeset allow it. This patch allows 'hg qfold' to specify '--message/'--logfile' and '--edit' at the same time like other commands creating new changeset.

test that a commit clears the merge state.

  $ hg init repo
  $ cd repo

  $ echo foo > file
  $ hg commit -Am 'add file'
  adding file

  $ echo bar >> file
  $ hg commit -Am 'append bar'


create a second head

  $ hg up -C 0
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ echo baz >> file
  $ hg commit -Am 'append baz'
  created new head

failing merge

  $ hg merge --tool=internal:fail
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
  [1]

resolve -l should contain an unresolved entry

  $ hg resolve -l
  U file

resolving an unknown path emits a warning
  $ hg resolve -m does-not-exist
  arguments do not match paths that need resolved

resolve the failure

  $ echo resolved > file
  $ hg resolve -m file
  no more unresolved files
  $ hg commit -m 'resolved'

resolve -l should be empty

  $ hg resolve -l

resolve -m should abort since no merge in progress
  $ hg resolve -m
  abort: resolve command not applicable when not merging
  [255]

test crashed merge with empty mergestate

  $ mkdir .hg/merge
  $ touch .hg/merge/state

resolve -l, should be empty

  $ hg resolve -l

  $ cd ..