summaryrefslogtreecommitdiffstats
path: root/result_collection_api/tests
diff options
context:
space:
mode:
Diffstat (limited to 'result_collection_api/tests')
-rw-r--r--result_collection_api/tests/unit/fake_pymongo.py26
1 files changed, 11 insertions, 15 deletions
diff --git a/result_collection_api/tests/unit/fake_pymongo.py b/result_collection_api/tests/unit/fake_pymongo.py
index 3494280..95c7371 100644
--- a/result_collection_api/tests/unit/fake_pymongo.py
+++ b/result_collection_api/tests/unit/fake_pymongo.py
@@ -5,6 +5,12 @@ from concurrent.futures import ThreadPoolExecutor
__author__ = 'serena'
+def thread_execute(method, *args, **kwargs):
+ with ThreadPoolExecutor(max_workers=2) as executor:
+ result = executor.submit(method, *args, **kwargs)
+ return result
+
+
class MemCursor(object):
def __init__(self, collection):
self.collection = collection
@@ -15,9 +21,7 @@ class MemCursor(object):
@property
def fetch_next(self):
- with ThreadPoolExecutor(max_workers=2) as executor:
- result = executor.submit(self._is_next_exist)
- return result
+ return thread_execute(self._is_next_exist)
def next_object(self):
self.count -= 1
@@ -41,9 +45,7 @@ class MemDb(object):
return None
def find_one(self, spec_or_id=None, *args):
- with ThreadPoolExecutor(max_workers=2) as executor:
- result = executor.submit(self._find_one, spec_or_id, *args)
- return result
+ return thread_execute(self._find_one, spec_or_id, *args)
def _insert(self, doc_or_docs, check_keys=True):
@@ -69,9 +71,7 @@ class MemDb(object):
return ids
def insert(self, doc_or_docs, check_keys=True):
- with ThreadPoolExecutor(max_workers=2) as executor:
- result = executor.submit(self._insert, doc_or_docs, check_keys)
- return result
+ return thread_execute(self._insert, doc_or_docs, check_keys)
@staticmethod
def _in(content, *args):
@@ -105,9 +105,7 @@ class MemDb(object):
return updated
def update(self, spec, document):
- with ThreadPoolExecutor(max_workers=2) as executor:
- result = executor.submit(self._update, spec, document)
- return result
+ return thread_execute(self._update, spec, document)
def _remove(self, spec_or_id=None):
if spec_or_id is None:
@@ -122,9 +120,7 @@ class MemDb(object):
return False
def remove(self, spec_or_id=None):
- with ThreadPoolExecutor(max_workers=2) as executor:
- result = executor.submit(self._remove, spec_or_id)
- return result
+ return thread_execute(self._remove, spec_or_id)
def clear(self):
self._remove()