view tests/test-resolve.t @ 22589:9ab18a912c44

ui: show prompt choice if input is not a tty but is forced to be interactive The tests often set ui.interactive to control normally interactive prompts from stdin. That gave an output where it was non-obvious what prompts got which which response, and the output lacked the newline users would see after input. Instead, if the input not is a tty, write the selection and a newline.
author Mads Kiilerich <madski@unity3d.com>
date Wed, 01 Oct 2014 01:04:18 +0200
parents b081decd9062
children dfad19274d85
line wrap: on
line source

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 resolving

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 ..