diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2020-11-04 21:48:19 -0500 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2020-11-04 21:57:14 -0500 |
commit | 3e77d698d6109f8bc681033f3bdb8b6383cc6e0a (patch) | |
tree | fbbb986eb940190e509e783b1cb7d83e0ebdab90 /tests | |
parent | 9e16bb8e5ac2694845c1e3e7cb6781cbac6dc0d2 (diff) | |
download | dogpile-cache-3e77d698d6109f8bc681033f3bdb8b6383cc6e0a.tar.gz |
mark thread-intensive tests and disable by default
using the tox 'full' environment marker will enable
them.
Fixes: #151
Fixes: #118
Fixes: #59
Change-Id: Ida5a9572ddd7f83ef4580e9e53fe2ae8acb64496
Diffstat (limited to 'tests')
-rw-r--r-- | tests/cache/_fixtures.py | 4 | ||||
-rw-r--r-- | tests/test_lock.py | 9 |
2 files changed, 13 insertions, 0 deletions
diff --git a/tests/cache/_fixtures.py b/tests/cache/_fixtures.py index c97ceb6..9d8176c 100644 --- a/tests/cache/_fixtures.py +++ b/tests/cache/_fixtures.py @@ -184,6 +184,7 @@ class _GenericBackendTest(_GenericBackendFixture, TestCase): eq_(reg.get_or_create("some key", creator), "some value") + @pytest.mark.time_intensive def test_threaded_dogpile(self): # run a basic dogpile concurrency test. # note the concurrency of dogpile itself @@ -214,6 +215,7 @@ class _GenericBackendTest(_GenericBackendFixture, TestCase): if not reg.backend.has_lock_timeout(): assert False not in canary + @pytest.mark.time_intensive def test_threaded_get_multi(self): reg = self._region(config_args={"expiration_time": 0.25}) locks = dict((str(i), Lock()) for i in range(11)) @@ -270,6 +272,7 @@ class _GenericBackendTest(_GenericBackendFixture, TestCase): reg.delete("some key") eq_(reg.get("some key"), NO_VALUE) + @pytest.mark.time_intensive def test_region_expire(self): # TODO: ideally tests like these would not be using actual # time(); instead, an artificial function where the increment @@ -344,6 +347,7 @@ class _GenericMutexTest(_GenericBackendFixture, TestCase): assert ac3 mutex.release() + @pytest.mark.time_intensive def test_mutex_threaded(self): backend = self._backend() backend.get_mutex("foo") diff --git a/tests/test_lock.py b/tests/test_lock.py index 4cec3cf..71dd192 100644 --- a/tests/test_lock.py +++ b/tests/test_lock.py @@ -6,6 +6,8 @@ import time from unittest import mock from unittest import TestCase +import pytest + from dogpile import Lock from dogpile import NeedRegenerationException from dogpile.util import ReadWriteMutex @@ -18,9 +20,11 @@ class ConcurrencyTest(TestCase): _assertion_lock = threading.Lock() + @pytest.mark.time_intensive def test_quick(self): self._test_multi(10, 2, 0.5, 50, 0.05, 0.1) + @pytest.mark.time_intensive def test_slow(self): self._test_multi(10, 5, 2, 50, 0.1, 0.1) @@ -32,20 +36,25 @@ class ConcurrencyTest(TestCase): # slow_write_time=2 # ) + @pytest.mark.time_intensive def test_return_while_in_progress(self): self._test_multi(10, 5, 2, 50, 1, 0.1) + @pytest.mark.time_intensive def test_get_value_plus_created_long_create(self): self._test_multi(10, 2, 2.5, 50, 0.05, 0.1) + @pytest.mark.time_intensive def test_get_value_plus_created_registry_unsafe_cache(self): self._test_multi( 10, 1, 0.6, 100, 0.05, 0.1, cache_expire_time="unsafe" ) + @pytest.mark.time_intensive def test_get_value_plus_created_registry_safe_cache_quick(self): self._test_multi(10, 2, 0.5, 50, 0.05, 0.1, cache_expire_time="safe") + @pytest.mark.time_intensive def test_get_value_plus_created_registry_safe_cache_slow(self): self._test_multi(10, 5, 2, 50, 0.1, 0.1, cache_expire_time="safe") |