diff options
author | Patrick <pnpnpn@users.noreply.github.com> | 2015-03-17 18:36:49 -0400 |
---|---|---|
committer | Patrick <pnpnpn@users.noreply.github.com> | 2015-03-17 18:36:49 -0400 |
commit | 3d66d09b20c6de36f35ec582b9c7716ba83eb641 (patch) | |
tree | dd1761f3b6ca79f5226b210025d2f8b68896aaad /tests | |
parent | 2304ff00ac08985ead06d0225591fa6508772ab2 (diff) | |
parent | b1edeeaa1d68b5f84becdbd31cfef0ac690bd2a7 (diff) | |
download | timeout-decorator-3d66d09b20c6de36f35ec582b9c7716ba83eb641.tar.gz |
Merge pull request #16 from bubenkoff/multithreading-support
Added optional threading support via python multiprocessing.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/__init__.py | 0 | ||||
-rw-r--r-- | tests/test_timeout_decorator.py | 47 |
2 files changed, 25 insertions, 22 deletions
diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/__init__.py diff --git a/tests/test_timeout_decorator.py b/tests/test_timeout_decorator.py index c40c82e..12d5389 100644 --- a/tests/test_timeout_decorator.py +++ b/tests/test_timeout_decorator.py @@ -1,46 +1,49 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - +"""Timeout decorator tests.""" import time -from nose.tools import raises +import pytest from timeout_decorator import timeout, TimeoutError -@raises(TimeoutError) -def test_timeout_decorator_arg(): - @timeout(1) +@pytest.fixture(params=[False, True]) +def use_signals(request): + """Use signals for timing out or not.""" + return request.param + + +def test_timeout_decorator_arg(use_signals): + @timeout(1, use_signals=use_signals) def f(): time.sleep(2) - f() + with pytest.raises(TimeoutError): + f() -@raises(TimeoutError) -def test_timeout_kwargs(): - @timeout() - def f(timeout): +def test_timeout_kwargs(use_signals): + @timeout(3, use_signals=use_signals) + def f(): time.sleep(2) - f(timeout=1) + with pytest.raises(TimeoutError): + f(timeout=1) -@raises(ValueError) -def test_timeout_no_seconds(): - @timeout() - def f(timeout): - time.sleep(2) +def test_timeout_no_seconds(use_signals): + @timeout(use_signals=use_signals) + def f(): + time.sleep(0.1) f() -def test_timeout_ok(): - @timeout(seconds=2) +def test_timeout_ok(use_signals): + @timeout(seconds=2, use_signals=use_signals) def f(): time.sleep(1) f() -def test_function_name(): - @timeout(seconds=2) +def test_function_name(use_signals): + @timeout(seconds=2, use_signals=use_signals) def func_name(): pass |