run python 3.5 on travis, adopt timeouts

Also
- Report the five slowest tests to watch for risk of timeout
- Double timeouts.
  Maybe that helps pypy on travis to finish successfully.
This commit is contained in:
Arnold Krille 2016-02-27 17:57:34 +01:00
parent df22f127eb
commit 8e99706b16
3 changed files with 8 additions and 6 deletions

View File

@ -16,6 +16,6 @@ install:
- pip install coveralls
#- pip install pytest # installed by Travis by default already
script:
- RUN_SLOW_TESTS_TOO=1 py.test --cov rq
- RUN_SLOW_TESTS_TOO=1 py.test --cov rq --durations=5
after_success:
- coveralls

View File

@ -578,13 +578,15 @@ def kill_worker(pid, double_kill):
class TestWorkerShutdown(RQTestCase):
def setUp(self):
# we want tests to fail if signal are ignored and the work remain
# running, so set a signal to kill them after 5 seconds
# running, so set a signal to kill them after X seconds
self.killtimeout = 10
signal.signal(signal.SIGALRM, self._timeout)
signal.alarm(5)
signal.alarm(self.killtimeout)
def _timeout(self, signal, frame):
raise AssertionError("test still running after 5 seconds, "
"likely the worker wasn't shutdown correctly")
raise AssertionError(
"test still running after %i seconds, likely the worker wasn't shutdown correctly" % self.killtimeout
)
@slow
def test_idle_worker_warm_shutdown(self):

View File

@ -2,7 +2,7 @@
envlist=py26,py27,py33,py34,py35,pypy,flake8
[testenv]
commands=py.test --cov rq {posargs}
commands=py.test --cov rq --durations=5 {posargs}
deps=
pytest
pytest-cov