forked from pool/python-dogpile.cache
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-dogpile.cache?expand=0&rev=30
41 lines
1.3 KiB
Diff
41 lines
1.3 KiB
Diff
From 15fe0d5285b96fcf2472d2c2cdd056b9f91a1290 Mon Sep 17 00:00:00 2001
|
|
From: Mike Bayer <mike_mp@zzzcomputing.com>
|
|
Date: Tue, 4 Jul 2017 10:21:40 -0400
|
|
Subject: [PATCH] - ensure all threads in thread local test stay up until a
|
|
flag is set. fixes #116
|
|
|
|
Change-Id: Ic8f781d31ac35372f4fec06b9f98f65a750e6c2e
|
|
---
|
|
tests/cache/test_memcached_backend.py | 10 +++++++---
|
|
1 file changed, 7 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/tests/cache/test_memcached_backend.py b/tests/cache/test_memcached_backend.py
|
|
index 9b83e7d..3793d27 100644
|
|
--- a/tests/cache/test_memcached_backend.py
|
|
+++ b/tests/cache/test_memcached_backend.py
|
|
@@ -286,14 +286,18 @@ class LocalThreadTest(TestCase):
|
|
backend = MockGenericMemcachedBackend(arguments={'url': 'foo'})
|
|
canary = []
|
|
|
|
- def f():
|
|
+ flag = [False]
|
|
+
|
|
+ def f(delay):
|
|
backend._clients.memcached
|
|
canary.append(MockClient.number_of_clients())
|
|
- time.sleep(.05)
|
|
+ while not flag[0]:
|
|
+ time.sleep(.02)
|
|
|
|
- threads = [Thread(target=f) for i in range(count)]
|
|
+ threads = [Thread(target=f, args=(count - i, )) for i in range(count)]
|
|
for t in threads:
|
|
t.start()
|
|
+ flag[0] = True
|
|
for t in threads:
|
|
t.join()
|
|
eq_(canary, [i + 1 for i in range(count)])
|
|
--
|
|
2.7.4.1.g5468f9e
|
|
|