From da438e61682f88d8b7a1f5e4dce38e318c846e2e Mon Sep 17 00:00:00 2001 From: Daniel Szoke Date: Wed, 17 Apr 2024 12:15:15 +0200 Subject: [PATCH] WIP: Attempt to test #2984 Struggling to get this test to work due to complex test setup --- tests/conftest.py | 13 ++++++++++++- tests/integrations/celery/test_celery.py | 17 +++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/tests/conftest.py b/tests/conftest.py index 118408cfc3..88508dce09 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -9,6 +9,8 @@ import pytest import jsonschema +from sentry_sdk.integrations.celery import CeleryIntegration + try: import gevent except ImportError: @@ -172,7 +174,7 @@ def reset_integrations(): _processed_integrations.clear() -@pytest.fixture +@pytest.fixture(scope="session") def sentry_init(request): def inner(*a, **kw): hub = sentry_sdk.Hub.current @@ -190,6 +192,15 @@ def inner(*a, **kw): yield inner +@pytest.fixture(scope="session") +def celery_config(sentry_init): + sentry_init(integrations=[CeleryIntegration()], enable_tracing=True) + return { + "broker_backend": "memory://", + "broker_url": "memory://", + } + + class TestTransport(Transport): def __init__(self): Transport.__init__(self) diff --git a/tests/integrations/celery/test_celery.py b/tests/integrations/celery/test_celery.py index 9ac3d2aa7d..fbc7f033d6 100644 --- a/tests/integrations/celery/test_celery.py +++ b/tests/integrations/celery/test_celery.py @@ -616,3 +616,20 @@ def example_task(): pytest.fail("Calling `apply_async` without arguments raised a TypeError") assert result.get() == "success" + + +def test_queue_task_name(capture_events, celery_app, celery_worker): + @celery_app.task(name="dummy_task", bind=True) + def dummy_task(self): + print(self.request) + return 42 + + celery_worker.reload() + events = capture_events() + dummy_task.delay() + + (event,) = events + breakpoint() + (span,) = event["spans"] + + assert span["data"]["messaging.destination.name"] == "celery"