diff options
author | Jeff Forcier <jeff@bitprophet.org> | 2017-10-23 18:35:00 -0700 |
---|---|---|
committer | Jeff Forcier <jeff@bitprophet.org> | 2017-10-23 18:35:00 -0700 |
commit | 6d9d14a4847a9ac769f6cab8b6af985b94378826 (patch) | |
tree | bad213068a5d5f545543a43749852d30d30c63af | |
parent | d2dbb33ae903de1e189312171afa86d8643ca271 (diff) |
Use pytest-timeout, configured via pytest.ini
-rw-r--r-- | dev-requirements.txt | 1 | ||||
-rw-r--r-- | pytest.ini | 7 | ||||
-rw-r--r-- | tasks.py | 1 |
3 files changed, 9 insertions, 0 deletions
diff --git a/dev-requirements.txt b/dev-requirements.txt index 9e09c03e..7302ff6b 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -8,3 +8,4 @@ wheel==0.24 twine==1.9.1 flake8==2.6.2 pytest==3.2.1 +pytest-timeout==1.2.0 diff --git a/pytest.ini b/pytest.ini new file mode 100644 index 00000000..af021870 --- /dev/null +++ b/pytest.ini @@ -0,0 +1,7 @@ +[pytest] +# 10 seconds is more time than nearly any test ought to take and almost surely +# indicates a full-on deadlock; but let's make it 30s just to be sure. +timeout = 30 +# Sadly the signal method of pytest-timeout does not appear to help, at least +# for the SFTP hangs encountered developing issue #1100. +timeout_method = thread @@ -28,6 +28,7 @@ def test(ctx, verbose=True, coverage=False, opts=""): if 'SSH_AUTH_SOCK' in env: del env['SSH_AUTH_SOCK'] cmd = "{} {}".format(runner, opts) + # NOTE: we have a pytest.ini and tend to use that over PYTEST_ADDOPTS. ctx.run(cmd, pty=True, env=env, replace_env=True) |