tests/test-inotify
author Patrick Mezard <pmezard@gmail.com>
Mon, 26 Apr 2010 22:30:40 +0200
branchstable
changeset 11010 18e81d42ee5c
parent 10944 6f1894d6a6b0
child 11545 db9d16233787
permissions -rwxr-xr-x
util: fix default termwidth() under Windows sys.stdout.write('-'*80 + '\n') or sys.stdout.write('-'*80 + '\r') do not work on Windows as they do on unix. On a 80 columns Windows console, the extra CR or LF are interpreted as if belonging to the next line, so the first command displays 2 lines (only one on unix) and the second one leave the line visible and move back to the following line. To avoid this, we sacrifice one column under Windows.

#!/bin/sh

"$TESTDIR/hghave" inotify || exit 80

hg init repo1
cd repo1

touch a b c d e
mkdir dir
mkdir dir/bar
touch dir/x dir/y dir/bar/foo

hg ci -Am m
cd ..
hg clone repo1 repo2

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

cd repo2
echo b >> a
# check that daemon started automatically works correctly
# and make sure that inotify.pidfile works
hg --config "inotify.pidfile=../hg2.pid" status

# make sure that pidfile worked. Output should be silent.
kill `cat ../hg2.pid`

cd ../repo1
echo % inserve
hg inserve -d --pid-file=hg.pid
cat hg.pid >> "$DAEMON_PIDS"

# let the daemon finish its stuff
sleep 1

echo % cannot start, already bound
hg inserve

# issue907
hg status
echo % clean
hg status -c
echo % all
hg status -A

echo '% path patterns'
echo x > dir/x
hg status .
hg status dir
cd dir
hg status .
cd ..

#issue 1375
#Testing that we can remove a folder and then add a file with the same name
echo % issue 1375

mkdir h
echo h > h/h
hg ci -Am t
hg rm h

echo h >h
hg add h

hg status
hg ci -m0

# Test for issue1735: inotify watches files in .hg/merge
hg st

echo a > a

hg ci -Am a
hg st

echo b >> a
hg ci -m ab
hg st

echo c >> a
hg st

HGMERGE=internal:local hg up 0
hg st

HGMERGE=internal:local hg up
hg st

# Test for 1844: "hg ci folder" will not commit all changes beneath "folder"
mkdir 1844
echo a > 1844/foo
hg add 1844
hg ci -m 'working'

echo b >> 1844/foo
hg ci 1844 -m 'broken'

kill `cat hg.pid`