view tests/test-mq-qqueue @ 11715:4f9dfb54c8b5 stable

qpush --move: move the right patch even with comment lines 88fc876a4833 caused that we find the index of the moving patch in self.series but look it up in self.full_series. The difference between these is that full_series also contains comment lines, and we thus moved the wrong patch. Use back self.full_series to find the moving patch, but take care of striping the patch guard markers before comparing the patch name. Test cases have been added for comments and empty lines in self.full_series, and for the case of guarded patches. Original patch contributed by Mads Kiilerich <mads@kiilerich.com>
author Gilles Moris <gilles.moris@free.fr>
date Sat, 10 Jul 2010 21:23:00 +0200
parents e8a66a40474d
children 9b771b4ce2f3
line wrap: on
line source

#!/bin/sh

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

hg init foo
cd foo
echo a > a
hg ci -qAm a

echo %% default queue
hg qqueue

echo b > a
hg qnew -fgDU somestuff

echo %% applied patches in default queue
hg qap

echo %% try to change patch \(create succeeds, switch fails\)
hg qqueue foo --create
hg qqueue

echo %% empty default queue
hg qpop

echo %% switch queue
hg qqueue foo
hg qqueue

echo %% fail creating queue with already existing name
hg qqueue --create foo
hg qqueue

echo %% unapplied patches
hg qun
echo c > a
hg qnew -fgDU otherstuff

echo %% fail switching back
hg qqueue patches

echo %% fail deleting current
hg qqueue foo --delete

echo %% switch back and delete foo
hg qpop -a
hg qqueue patches
hg qqueue foo --delete
hg qqueue

echo %% tricky cases
hg qqueue store --create
hg qnew journal
hg qqueue
hg qpop -a
hg qqueue patches
hg qun

echo %% invalid names
hg qqueue test/../../bar --create
hg qqueue . --create

cd ..