view tests/test-mv-cp-st-diff @ 8669:6f0f69da003e

commands: typo in bundle abort message This error trigger if one calls bundle with the wrong parameters and it is thus not an error scripts will want to look for (they could and should ensure that they call bundle with the correct parameters).
author Martin Geisler <mg@lazybytes.net>
date Sun, 31 May 2009 18:09:19 +0200
parents 3f4f14eab085
children 83cfa1baf8ad
line wrap: on
line source

#!/bin/sh

add()
{
    echo $2 >> $1
}

hg init t
cd t

# set up a boring main branch
add a a
hg add a
mkdir x
add x/x x
hg add x/x
hg ci -m0

add a m1
hg ci -m1

add a m2
add x/y y1
hg add x/y
hg ci -m2
cd ..

show()
{
    echo "- $2: $1"
    hg st -C $1
    echo
    hg diff --git $1
    echo
}

count=0
# make a new branch and get diff/status output
# $1 - first commit
# $2 - second commit
# $3 - working dir action
# $4 - test description
tb()
{
    hg clone t t2 ; cd t2
    hg co -q -C 0

    add a $count
    count=`expr $count + 1`
    hg ci -m "t0"
    $1
    hg ci -m "t1"
    $2
    hg ci -m "t2"
    $3

    echo "** $4 **"
    echo "** $1 / $2 / $3"
    show "" "working to parent"
    show "--rev 0" "working to root"
    show "--rev 2" "working to branch"
    show "--rev 0 --rev ." "root to parent"
    show "--rev . --rev 0" "parent to root"
    show "--rev 2 --rev ." "branch to parent"
    show "--rev . --rev 2" "parent to branch"
    echo
    cd ..
    rm -rf t2
}


tb "add a a1" "add a a2" "hg mv a b" "rename in working dir"
tb "add a a1" "add a a2" "hg cp a b" "copy in working dir" 
tb "hg mv a b" "add b b1" "add b w" "single rename"
tb "hg cp a b" "add b b1" "add a w" "single copy"
tb "hg mv a b" "hg mv b c" "hg mv c d" "rename chain"
tb "hg cp a b" "hg cp b c" "hg cp c d" "copy chain"
tb "add a a1" "hg mv a b" "hg mv b a" "circular rename"

tb "hg mv x y" "add y/x x1" "add y/x x2" "directory move"