mirror of
https://github.com/Ichinga-Samuel/aiomql.git
synced 2026-08-15 21:08:06 +00:00
Update tests and docs across core, lib, and contrib modules
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
import asyncio
|
||||
|
||||
from aiomql.core.task_queue import TaskQueue, QueueItem
|
||||
|
||||
|
||||
class TestTaskQueue:
|
||||
@classmethod
|
||||
def setup_class(cls):
|
||||
cls.task_queue = TaskQueue(absolute_timeout=6, worker_timeout=1)
|
||||
cls.data = {}
|
||||
|
||||
async def task_one(self):
|
||||
for i in range(10):
|
||||
await asyncio.sleep(0.5)
|
||||
self.data.setdefault("task_one", {})[i] = f"task_one_{i}"
|
||||
|
||||
async def task_two(self):
|
||||
for i in range(10):
|
||||
await asyncio.sleep(0.5)
|
||||
self.data.setdefault("task_two", {})[i] = f"task_two_{i}"
|
||||
|
||||
async def task_three(self):
|
||||
for i in range(10):
|
||||
self.data.setdefault("task_three", {})[i] = f"task_three_{i}"
|
||||
await asyncio.sleep(10)
|
||||
|
||||
async def test_queue(self):
|
||||
item_one = QueueItem(self.task_one)
|
||||
self.task_queue.add(item=item_one, must_complete=False)
|
||||
assert self.task_queue.queue.qsize() == 1
|
||||
self.task_queue.add(item=QueueItem(self.task_two), must_complete=True)
|
||||
assert self.task_queue.queue.qsize() == 2
|
||||
self.task_queue.add(item=QueueItem(self.task_three), must_complete=False)
|
||||
await self.task_queue.run()
|
||||
assert len(self.data["task_one"]) >= 2
|
||||
assert len(self.data["task_two"]) == 10
|
||||
Reference in New Issue
Block a user