tests/test-mq-qnew
changeset 10397 8cb81d75730c
parent 10372 27d542bc0f5b
child 10588 b0b19d61d79a
--- a/tests/test-mq-qnew	Mon Feb 08 19:44:04 2010 +0100
+++ b/tests/test-mq-qnew	Sun Feb 07 10:47:54 2010 -0500
@@ -1,73 +1,102 @@
 #!/bin/sh
 
+catpatch() {
+    cat $1 | sed -e "s/^\(# Parent \).*/\1/"
+}
+
 echo "[extensions]" >> $HGRCPATH
 echo "mq=" >> $HGRCPATH
 
-hg init mq
-cd mq
+runtest() {
+    hg init mq
+    cd mq
 
-echo a > a
-hg ci -Ama
+    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
+    echo '% qnew should refuse bad patch names'
+    hg qnew series
+    hg qnew status
+    hg qnew guards
+    hg qnew .hgignore
 
-hg qinit -c
+    hg qinit -c
 
-echo '% qnew with uncommitted changes'
-echo a > somefile
-hg add somefile
-hg qnew uncommitted.patch
-hg st
-hg qseries
+    echo '% qnew with uncommitted changes'
+    echo a > somefile
+    hg add somefile
+    hg qnew uncommitted.patch
+    hg st
+    hg qseries
+
+    echo '% qnew implies add'
+    hg -R .hg/patches st
 
-echo '% qnew implies add'
-hg -R .hg/patches st
+    echo '% qnew missing'
+    hg qnew missing.patch missing
+
+    echo '% qnew -m'
+    hg qnew -m 'foo bar' mtest.patch
+    catpatch .hg/patches/mtest.patch
 
-echo '% qnew missing'
-hg qnew missing.patch missing
+    echo '% qnew twice'
+    hg qnew first.patch
+    hg qnew first.patch
 
-echo '% qnew -m'
-hg qnew -m 'foo bar' mtest.patch
-cat .hg/patches/mtest.patch
+    touch ../first.patch
+    hg qimport ../first.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
+    catpatch ../.hg/patches/p
 
-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
+    catpatch ../.hg/patches/red
 
-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
+
+    cd ../../..
+    rm -r mq
+}
+
 
-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
+echo '%%% plain headers'
+
+echo "[mq]" >> $HGRCPATH
+echo "plain=true" >> $HGRCPATH
+
+mkdir sandbox
+(cd sandbox ; runtest)
+rm -r sandbox
+
+
+echo '%%% hg headers'
+
+echo "plain=false" >> $HGRCPATH
+
+mkdir sandbox
+(cd sandbox ; runtest)
+rm -r sandbox
+
 
 exit 0