Skip to content

Commit 14fa3f4

Browse files
🎨 Cleanup test in celery library (#8364)
1 parent 381dc67 commit 14fa3f4

File tree

1 file changed

+41
-33
lines changed

1 file changed

+41
-33
lines changed

packages/celery-library/tests/unit/test_tasks.py

Lines changed: 41 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,7 @@ async def test_listing_task_uuids_contains_submitted_task(
210210

211211
async def test_filtering_listing_tasks(
212212
celery_task_manager: CeleryTaskManager,
213+
with_celery_worker: WorkController,
213214
):
214215
class MyFilter(TaskFilter):
215216
user_id: int
@@ -218,39 +219,46 @@ class MyFilter(TaskFilter):
218219

219220
user_id = 42
220221
expected_task_uuids: set[TaskUUID] = set()
222+
all_tasks: list[tuple[TaskUUID, MyFilter]] = []
223+
224+
try:
225+
for _ in range(5):
226+
task_filter = MyFilter(
227+
user_id=user_id,
228+
product_name=_faker.word(),
229+
client_app=_faker.word(),
230+
)
231+
task_uuid = await celery_task_manager.submit_task(
232+
TaskMetadata(
233+
name=dreamer_task.__name__,
234+
),
235+
task_filter=task_filter,
236+
)
237+
expected_task_uuids.add(task_uuid)
238+
all_tasks.append((task_uuid, task_filter))
239+
240+
for _ in range(3):
241+
task_filter = MyFilter(
242+
user_id=_faker.pyint(min_value=100, max_value=200),
243+
product_name=_faker.word(),
244+
client_app=_faker.word(),
245+
)
246+
task_uuid = await celery_task_manager.submit_task(
247+
TaskMetadata(
248+
name=dreamer_task.__name__,
249+
),
250+
task_filter=task_filter,
251+
)
252+
all_tasks.append((task_uuid, task_filter))
221253

222-
for _ in range(5):
223-
task_filter = MyFilter(
254+
search_filter = MyFilter(
224255
user_id=user_id,
225-
product_name=_faker.word(),
226-
client_app=_faker.word(),
227-
)
228-
task_uuid = await celery_task_manager.submit_task(
229-
TaskMetadata(
230-
name=dreamer_task.__name__,
231-
),
232-
task_filter=task_filter,
256+
product_name=Wildcard(),
257+
client_app=Wildcard(),
233258
)
234-
expected_task_uuids.add(task_uuid)
235-
236-
for _ in range(3):
237-
task_filter = MyFilter(
238-
user_id=_faker.pyint(min_value=100, max_value=200),
239-
product_name=_faker.word(),
240-
client_app=_faker.word(),
241-
)
242-
await celery_task_manager.submit_task(
243-
TaskMetadata(
244-
name=dreamer_task.__name__,
245-
),
246-
task_filter=task_filter,
247-
)
248-
249-
search_filter = MyFilter(
250-
user_id=user_id,
251-
product_name=Wildcard(),
252-
client_app=Wildcard(),
253-
)
254-
tasks = await celery_task_manager.list_tasks(search_filter)
255-
assert expected_task_uuids == {task.uuid for task in tasks}
256-
await asyncio.sleep(5 * 60)
259+
tasks = await celery_task_manager.list_tasks(search_filter)
260+
assert expected_task_uuids == {task.uuid for task in tasks}
261+
finally:
262+
# clean up all tasks. this should ideally be done in the fixture
263+
for task_uuid, task_filter in all_tasks:
264+
await celery_task_manager.cancel_task(task_filter, task_uuid)

0 commit comments

Comments
 (0)