view tests/test-mq-strip @ 11513:0c944b7af564 stable

mq: fixed ENOENT when qrename to new/directory.patch MQ patch name can contain slashes, e.g. 'foo/bar.patch'. Currently "qnew foo/bar.patch" works, but "qrename foo/bar.patch new/dir.patch" fails with "No such file or directory". Also added test case for "qnew foo/bar.patch"
author Yuya Nishihara <yuya@tcha.org>
date Sun, 28 Mar 2010 15:23:11 +0900
parents 2313dc4d9817
children 64f284da1278
line wrap: on
line source

#!/bin/sh

. $TESTDIR/helpers.sh

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

teststrip() {
    hg up -C $1
    echo % before update $1, strip $2
    hg parents
    hg strip $2 | hidebackup
    echo % after update $1, strip $2
    hg parents
    hg unbundle -q .hg/strip-backup/*
    rm .hg/strip-backup/*
}

hg init test
cd test

echo foo > bar
hg ci -Ama

echo more >> bar
hg ci -Amb

echo blah >> bar
hg ci -Amc

hg up 1
echo blah >> bar
hg ci -Amd

echo final >> bar
hg ci -Ame

hg log

teststrip 4 4
teststrip 4 3
teststrip 1 4
teststrip 4 2
teststrip 4 1
teststrip null 4

hg log

hg up -C 2
hg merge 4
echo % before strip of merge parent
hg parents
hg strip 4 2>&1 | hidebackup
echo % after strip of merge parent
hg parents