view tests/test-impexp-branch.t @ 12748:d10369fefd01

alias: fail gracefully when invalid global options are given (issue2442) This patch modifies the check for shell aliases to prevent crashing when an invalid global option is given. When an invalid global option is given the check will simply return and let the normal error handling for this case happen.
author Steve Losh <steve@stevelosh.com>
date Sun, 17 Oct 2010 13:24:37 -0400
parents 46ab8c5dd99a
children fbbe9239574a
line wrap: on
line source

  $ cat >findbranch.py <<EOF
  > import re, sys
  > 
  > head_re = re.compile('^#(?:(?:\\s+([A-Za-z][A-Za-z0-9_]*)(?:\\s.*)?)|(?:\\s*))$')
  > 
  > for line in sys.stdin:
  >     hmatch = head_re.match(line)
  >     if not hmatch:
  >         sys.exit(1)
  >     if hmatch.group(1) == 'Branch':
  >         sys.exit(0)
  > sys.exit(1)
  > EOF
  $ hg init a
  $ cd a
  $ echo "Rev 1" >rev
  $ hg add rev
  $ hg commit -m "No branch."
  $ hg branch abranch
  marked working directory as branch abranch
  $ echo "Rev  2" >rev
  $ hg commit -m "With branch."
  $ if hg export 0 | python ../findbranch.py; then
  >     echo "Export of default branch revision has Branch header" 1>&2
  >     exit 1
  > fi
  $ if hg export 1 | python ../findbranch.py; then
  >     :  # Do nothing
  > else
  >     echo "Export of branch revision is missing Branch header" 1>&2
  >     exit 1
  > fi

Make sure import still works with branch information in patches.

  $ cd ..
  $ hg init b
  $ cd b
  $ hg -R ../a export 0 | hg import -
  applying patch from stdin
  $ hg -R ../a export 1 | hg import -
  applying patch from stdin
  $ cd ..
  $ rm -rf b
  $ hg init b
  $ cd b
  $ hg -R ../a export 0 | hg import --exact -
  applying patch from stdin
  $ hg -R ../a export 1 | hg import --exact -
  applying patch from stdin