##// END OF EJS Templates
cmdutil.service: do not _exit(0) in the parent process...
cmdutil.service: do not _exit(0) in the parent process The fact that a parent process spawns a daemon does not necessarily means that it is the only think it has to do. This was forcing since 7c01599dd340 inotify processes launched implicitely to exit prematurely: when no inotify server was running, "hg st" for example would only launch a inotify server, _exit(0) and thus would not return file statuses. This changeset adds a test for implicitely launched inotify processes. Change to output of test-inotify-1208 is correct: it reflects the normal error message of "hg st" when not dying during "hg inserve" daemon creation.

File last commit:

r9896:2c2f7593 stable
r9896:2c2f7593 stable
Show More
test-inotify
92 lines | 1.2 KiB | text/plain | TextLexer
#!/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
hg status
cd ../repo1
echo % inserve
hg inserve -d --pid-file=hg.pid
cat hg.pid >> "$DAEMON_PIDS"
# let the daemon finish its stuff
sleep 1
# 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
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`