tests: add timeouts, make run-tests.py clean up dead daemon processes
test timeout feature is needed for test with python 2.5 beta. if test
does not complete in time (30 seconds is default), it is killed.
some times daemon process used in test can be alive after the test
is killed by user or by timeout. tests now record daemon pids into
$DAEMON_PIDS and run-tests.py kills all living daemons after every test.
final little change is to add newline to end of pid file printed by
"hg serve", else "cat hg.pid >> $DAEMON_FILES" gives garbage.
#!/bin/sh
hg init
echo foo > a
hg add a
hg commit -m "1" -d "1000000 0"
echo bar > b
hg add b
hg remove a
echo "%%% should show a removed and b added"
hg status
echo "reverting..."
hg revert
echo "%%% should show b unknown and a back to normal"
hg status
rm b
hg co -C 0
echo foo-a > a
hg commit -m "2a" -d "1000000 0"
hg co -C 0
echo foo-b > a
hg commit -m "2b" -d "1000000 0"
HGMERGE=true hg merge 1
echo "%%% should show foo-b"
cat a
echo bar > b
hg add b
rm a
hg remove a
echo "%%% should show a removed and b added"
hg status
echo "%%% revert should fail"
hg revert
echo "%%% revert should be ok now"
hg revert -r2
echo "%%% should show b unknown and a marked modified (merged)"
hg status
echo "%%% should show foo-b"
cat a