run-tests: also follow symlink when update PATH with 'run-tests.py' dir
I'm using 'run-tests.py' from my '$PATH' and use a symlink to get 'run-tests.py'
to in that '$PATH'. There is a handful of test helpers (like f) that needs to be
in the '$PATH' for the test to run, and they are expected to live next to the
'run-tests.py' binary. Using a symlink confuses this logic, so we add to the
'$PATH' both the 'run-tests.py' executable directory, and the actual file
location direction.
#require serve fifo
Test hangup signal in the middle of transaction
$ hg init
$ mkfifo p
$ hg serve --stdio < p 1>out 2>&1 &
$ P=$!
Do test while holding fifo open
$ (
> echo lock
> echo addchangegroup
> start=`date +%s`
> # 10 second seems much enough to let the server catch up
> deadline=`expr $start + 10`
> while [ ! -s .hg/store/journal ]; do
> sleep 0;
> if [ `date +%s` -gt $deadline ]; then
> echo "transaction did not start after 10 seconds" >&2;
> exit 1;
> fi
> done
> kill -HUP $P
> ) > p
$ wait
$ cat out
0
0
adding changesets
transaction abort!
rollback completed
killed!
$ ls -1d .hg/* .hg/store/*
.hg/00changelog.i
.hg/journal.bookmarks
.hg/journal.branch
.hg/journal.desc
.hg/journal.dirstate
.hg/requires
.hg/store
.hg/store/00changelog.i
.hg/store/00changelog.i.a
.hg/store/journal.phaseroots