view tests/test-addremove-similar @ 11168:6d0d945f9e52

keyword: support extensions using dorecord, e.g. crecord Provide extendable keyword.recordextensions variable, so other extensions beside hgext.record which provide the dorecord function can cooperate with hgext.keyword like so (example from crecord): def extsetup(): try: keyword = extensions.find('keyword') keyword.restricted += ' crecord qcrecord' try: # use record support in keyword.py if present keyword.recordcommands += ' crecord qcrecord' keyword.recordextensions += ' crecord' except AttributeError: pass except KeyError: pass
author Christian Ebert <blacktrash@gmx.net>
date Sun, 09 May 2010 11:14:43 +0200
parents 1a96f1d9599b
children
line wrap: on
line source

#!/bin/sh

hg init rep; cd rep

touch empty-file
python -c 'for x in range(10000): print x' > large-file

hg addremove

hg commit -m A

rm large-file empty-file
python -c 'for x in range(10,10000): print x' > another-file

hg addremove -s50

hg commit -m B

echo % comparing two empty files caused ZeroDivisionError in the past
hg update -C 0
rm empty-file
touch another-empty-file
hg addremove -s50

cd ..

hg init rep2; cd rep2

python -c 'for x in range(10000): print x' > large-file
python -c 'for x in range(50): print x' > tiny-file

hg addremove

hg commit -m A

python -c 'for x in range(70): print x' > small-file
rm tiny-file
rm large-file

hg addremove -s50

hg commit -m B

echo % should all fail
hg addremove -s foo
hg addremove -s -1
hg addremove -s 1e6

cd ..

echo '% issue 1527'
hg init rep3; cd rep3
mkdir d
echo a > d/a
hg add d/a
hg commit -m 1

mv d/a d/b
hg addremove -s80
hg debugstate
mv d/b c
echo "% no copies found here (since the target isn't in d"
hg addremove -s80 d
echo "% copies here"
hg addremove -s80

true