tests/test-mq-qnew
author Jim Hague <jim.hague@acm.org>
Wed, 06 Jan 2010 18:03:33 +0000
branchstable
changeset 10253 b190a8125b43
parent 10114 3e7663b2f3fc
child 10372 27d542bc0f5b
permissions -rwxr-xr-x
Work around AIX shell builtin printf not handling \NNN. On AIX, ksh builtin printf does not understand \NNN. Some tests use this to generate test data, and so fail on AIX. Rework these tests to use python to generate the correct characters. This fixes the tests on AIX and should be more generally portable.

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "mq=" >> $HGRCPATH

hg init mq
cd mq

echo a > a
hg ci -Ama

echo '% qnew should refuse bad patch names'
hg qnew series
hg qnew status
hg qnew guards
hg qnew .hgignore

hg qinit -c

echo '% qnew with uncommitted changes'
echo a > somefile
hg add somefile
hg qnew uncommitted.patch
hg st
hg qseries
hg revert --no-backup somefile
rm somefile

echo '% qnew implies add'
hg qnew test.patch
hg -R .hg/patches st

echo '% qnew missing'
hg qnew missing.patch missing

echo '% qnew -m'
hg qnew -m 'foo bar' mtest.patch
cat .hg/patches/mtest.patch

echo '% qnew twice'
hg qnew first.patch
hg qnew first.patch

touch ../first.patch
hg qimport ../first.patch

echo '% qnew -f from a subdirectory'
hg qpop -a
mkdir d
cd d
echo b > b
hg ci -Am t
echo b >> b
hg st
hg qnew -g -f p
cat ../.hg/patches/p

echo '% qnew -u with no username configured'
HGUSER= hg qnew -u blue red
cat ../.hg/patches/red

echo '% fail when trying to import a merge'
hg init merge
cd merge
touch a
hg ci -Am null
echo a >> a
hg ci -m a
hg up -r 0
echo b >> a
hg ci -m b
hg merge -f 1
hg resolve --mark a
hg qnew -f merge

exit 0