view tests/test-remove @ 8048:d22432bdcba1

convert/cvs: delay CVS log parsing after initialization (issue1581/2) Source and destination constructors should be fast so configurations issues are hit quickly, including authentication and filemap/authormap/splicemap issues. Delaying might be a problem if the remove side disconnects idle connections while the log is being read. It did not happen when converting openafs repository, where log retrieval took at least 10mn.
author Patrick Mezard <pmezard@gmail.com>
date Sat, 11 Apr 2009 21:17:11 +0200
parents 7cb9af02e250
children 1f665246dab3
line wrap: on
line source

#!/bin/sh

remove() {
    hg rm $@
    hg st
    # do not use ls -R, which recurses in .hg subdirs on Mac OS X 10.5
    find . -name .hg -prune -o -type f -print | sort
    hg up -C
}

hg init a
cd a
echo a > foo

echo % file not managed
remove foo

hg add foo
hg commit -m1

# the table cases

echo % 00 state added, options none
echo b > bar
hg add bar
remove bar

echo % 01 state clean, options none
remove foo

echo % 02 state modified, options none
echo b >> foo
remove foo

echo % 03 state missing, options none
rm foo
remove foo

echo % 10 state added, options -f
echo b > bar
hg add bar
remove -f bar
rm bar

echo % 11 state clean, options -f
remove -f foo

echo % 12 state modified, options -f
echo b >> foo
remove -f foo

echo % 13 state missing, options -f
rm foo
remove -f foo

echo % 20 state added, options -A
echo b > bar
hg add bar
remove -A bar

echo % 21 state clean, options -A
remove -A foo

echo % 22 state modified, options -A
echo b >> foo
remove -A foo

echo % 23 state missing, options -A
rm foo
remove -A foo

echo % 30 state added, options -Af
echo b > bar
hg add bar
remove -Af bar
rm bar

echo % 31 state clean, options -Af
remove -Af foo

echo % 32 state modified, options -Af
echo b >> foo
remove -Af foo

echo % 33 state missing, options -Af
rm foo
remove -Af foo

# test some directory stuff

mkdir test
echo a > test/foo
echo b > test/bar
hg ci -Am2

echo % dir, options none
rm test/bar
remove test

echo % dir, options -f
rm test/bar
remove -f test

echo % dir, options -A
rm test/bar
remove -A test

echo % dir, options -Af
rm test/bar
remove -Af test