diff options
author | robot-piglet <[email protected]> | 2025-08-28 14:27:58 +0300 |
---|---|---|
committer | robot-piglet <[email protected]> | 2025-08-28 14:57:06 +0300 |
commit | 81d828c32c8d5477cb2f0ce5da06a1a8d9392ca3 (patch) | |
tree | 3081d566f0d5158d76e9093261344f6406fd09f7 /contrib/python/portalocker/py3/tests/test_semaphore.py | |
parent | 77ea11423f959e51795cc3ef36a48d808b4ffb98 (diff) |
Intermediate changes
commit_hash:d5b1af16dbe9030537a04c27eb410c88c2f496cd
Diffstat (limited to 'contrib/python/portalocker/py3/tests/test_semaphore.py')
-rw-r--r-- | contrib/python/portalocker/py3/tests/test_semaphore.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/contrib/python/portalocker/py3/tests/test_semaphore.py b/contrib/python/portalocker/py3/tests/test_semaphore.py new file mode 100644 index 00000000000..b0c57aa23c7 --- /dev/null +++ b/contrib/python/portalocker/py3/tests/test_semaphore.py @@ -0,0 +1,22 @@ +import random +import pytest +import portalocker +from portalocker import utils + + [email protected]('timeout', [None, 0, 0.001]) [email protected]('check_interval', [None, 0, 0.0005]) +def test_bounded_semaphore(timeout, check_interval, monkeypatch): + n = 2 + name = random.random() + monkeypatch.setattr(utils, 'DEFAULT_TIMEOUT', 0.0001) + monkeypatch.setattr(utils, 'DEFAULT_CHECK_INTERVAL', 0.0005) + + semaphore_a = portalocker.BoundedSemaphore(n, name=name, timeout=timeout) + semaphore_b = portalocker.BoundedSemaphore(n, name=name, timeout=timeout) + semaphore_c = portalocker.BoundedSemaphore(n, name=name, timeout=timeout) + + semaphore_a.acquire(timeout=timeout) + semaphore_b.acquire() + with pytest.raises(portalocker.AlreadyLocked): + semaphore_c.acquire(check_interval=check_interval, timeout=timeout) |