Mercurial > hg
view tests/test-hup.t @ 16364:f64b25f147d7 stable
tests: avoid test-hup hanging on AIX
test-hup hangs on AIX. Under ksh89 on AIX (the default shell),
echo Hello; while [ ! -s not-there ]; do true; done
produces no output while the loop executes. Replacing 'true' with 'sleep 0'
fixes, as does using a less broken shell. ksh93 is fine.
Update check-code.py to look for this, and make same change in test-serve.t.
In fact test-serve works fine, probably because of additional commands between
echo and the loop, but that's a subtlety not easy to test for.
author | Jim Hague <jim.hague@acm.org> |
---|---|
date | Thu, 05 Apr 2012 12:31:21 +0100 |
parents | fb765286f2f9 |
children | 9fae01831dea |
line wrap: on
line source
Test hangup signal in the middle of transaction $ "$TESTDIR/hghave" serve fifo || exit 80 $ hg init $ mkfifo p $ hg serve --stdio < p 1>out 2>&1 & $ P=$! Do test while holding fifo open $ ( > echo lock > echo addchangegroup > while [ ! -s .hg/store/journal ]; do sleep 0; done > kill -HUP $P > ) > p $ wait $ cat out 0 0 adding changesets transaction abort! rollback completed killed! $ echo .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