Mercurial > hg > mercurial-crew
changeset 28257:67aa88e00fc7
run-tests: fix get port to try differing ports
The code was moving its offset each time through the loop,
but because it failed to update port, the port was not
going to be available...
author | timeless <timeless@mozdev.org> |
---|---|
date | Tue, 29 Dec 2015 04:30:38 +0000 |
parents | 1ad9da968a2e |
children | 8a87627d263a |
files | tests/run-tests.py tests/test-run-tests.t |
diffstat | 2 files changed, 15 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/run-tests.py +++ b/tests/run-tests.py @@ -2015,11 +2015,11 @@ def _getport(self, count): port = self._ports.get(count) # do we have a cached entry? if port is None: - port = self.options.port + self._portoffset portneeded = 3 # above 100 tries we just give up and let test reports failure for tries in xrange(100): allfree = True + port = self.options.port + self._portoffset for idx in xrange(portneeded): if not checkportisavailable(port + idx): allfree = False
--- a/tests/test-run-tests.t +++ b/tests/test-run-tests.t @@ -223,6 +223,20 @@ [1] $ rm test-serve-fail.t +Verify that we can try other ports +=================================== + $ hg init inuse + $ hg serve -R inuse -p $HGPORT -d --pid-file=blocks.pid + $ cat blocks.pid >> $DAEMON_PIDS + $ cat > test-serve-inuse.t <<EOF + > $ hg serve -R `pwd`/inuse -p \$HGPORT -d --pid-file=hg.pid + > $ cat hg.pid >> \$DAEMON_PIDS + > EOF + $ rt test-serve-inuse.t + . + # Ran 1 tests, 0 skipped, 0 warned, 0 failed. + $ rm test-serve-inuse.t + Running In Debug Mode ======================