Skip to content

Commit 70bf868

Browse files
fix: shutdown
1 parent 86bbe39 commit 70bf868

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

packages/celery-library/tests/conftest.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import pytest
1111
from celery import Celery # type: ignore[import-untyped]
1212
from celery.contrib.testing.worker import TestWorkController, start_worker
13-
from celery.signals import worker_init, worker_shutdown
13+
from celery.signals import worker_init
1414
from celery.worker.worker import WorkController
1515
from celery_library.backends._redis import RedisTaskInfoStore
1616
from celery_library.signals import on_worker_init, on_worker_shutdown
@@ -128,7 +128,6 @@ def _on_worker_init_wrapper(sender: WorkController, **_kwargs):
128128
return partial(on_worker_init, app_server)(sender, **_kwargs)
129129

130130
worker_init.connect(_on_worker_init_wrapper)
131-
worker_shutdown.connect(on_worker_shutdown)
132131

133132
register_celery_tasks(celery_app)
134133

@@ -140,7 +139,14 @@ def _on_worker_init_wrapper(sender: WorkController, **_kwargs):
140139
perform_ping_check=False,
141140
queues="default",
142141
) as worker:
143-
yield worker
142+
# Ensure worker is fully up before test continues
143+
worker.ensure_started()
144+
145+
try:
146+
yield worker
147+
finally:
148+
worker_init.disconnect(_on_worker_init_wrapper)
149+
on_worker_shutdown(worker)
144150

145151

146152
@pytest.fixture

0 commit comments

Comments
 (0)