Skip to content

Commit ce1e9bd

Browse files
committed
Scope uuid queue & exchange to session
1 parent 4a36d0a commit ce1e9bd

3 files changed

Lines changed: 28 additions & 31 deletions

File tree

tests/messagebroker_kombu/conftest.py

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
import uuid
1818

1919
import kombu
20-
from amqp.exceptions import NotFound
2120
import pytest
21+
from amqp.exceptions import NotFound
2222
from kombu import messaging, serialization
2323
from testing_support.db_settings import rabbitmq_settings
2424
from testing_support.fixtures import ( # noqa: F401; pylint: disable=W0611
@@ -34,12 +34,7 @@
3434
DB_SETTINGS = rabbitmq_settings()[0]
3535

3636

37-
@pytest.fixture(
38-
scope="session",
39-
params=[
40-
"pyamqp" # , "amqp", #"qpid", "redis"
41-
],
42-
)
37+
@pytest.fixture(scope="session", params=["pyamqp"])
4338
def transport_type(request):
4439
return request.param
4540

@@ -75,11 +70,11 @@ def consumer_connection(transport_type):
7570

7671

7772
@pytest.fixture(scope="function")
78-
def producer(producer_connection):
73+
def producer(producer_connection, queue):
74+
# Purge the queue.
7975
try:
80-
# Purge the queue.
8176
channel = producer_connection.channel()
82-
channel.queue_purge("bar")
77+
channel.queue_purge(queue.name)
8378
except NotFound: # This can happen if the queue is not found.
8479
pass
8580

@@ -153,14 +148,16 @@ def events():
153148
return []
154149

155150

156-
@pytest.fixture
151+
@pytest.fixture(scope="session")
157152
def exchange():
158-
return kombu.Exchange("exchange", "direct", durable=True)
153+
exchange_uuid = str(uuid.uuid4())
154+
return kombu.Exchange(f"exchange-{exchange_uuid}", "direct", durable=True)
159155

160156

161-
@pytest.fixture
157+
@pytest.fixture(scope="session")
162158
def queue(exchange):
163-
return kombu.Queue("bar", exchange=exchange, routing_key="bar")
159+
queue_uuid = str(uuid.uuid4())
160+
return kombu.Queue(f"queue-{queue_uuid}", exchange=exchange, routing_key="bar")
164161

165162

166163
@pytest.fixture

tests/messagebroker_kombu/test_consumer.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@
2727
from newrelic.common.package_version_utils import get_package_version
2828

2929

30-
def test_custom_metrics(get_consumer_record, events):
30+
def test_custom_metrics(get_consumer_record, events, exchange):
3131
@validate_transaction_metrics(
32-
"Named/exchange",
32+
f"Named/{exchange.name}",
3333
group="Message/Kombu/Exchange",
3434
custom_metrics=[
35-
("Message/Kombu/Exchange/Named/exchange/Received/Bytes", 1),
36-
("Message/Kombu/Exchange/Named/exchange/Received/Messages", 1),
37-
("MessageBroker/Kombu/Exchange/Named/exchange/Serialization/Value", 1),
35+
(f"Message/Kombu/Exchange/Named/{exchange.name}/Received/Bytes", 1),
36+
(f"Message/Kombu/Exchange/Named/{exchange.name}/Received/Messages", 1),
37+
(f"MessageBroker/Kombu/Exchange/Named/{exchange.name}/Serialization/Value", 1),
3838
],
3939
background_task=True,
4040
)
@@ -60,16 +60,16 @@ def test_multiple_transactions(get_consumer_record):
6060
get_consumer_record()
6161

6262

63-
def test_custom_metrics_on_existing_transaction(get_consumer_record):
63+
def test_custom_metrics_on_existing_transaction(get_consumer_record, exchange):
6464
version = get_package_version("kombu")
6565

6666
@validate_transaction_metrics(
6767
"test_consumer:test_custom_metrics_on_existing_transaction.<locals>._test",
6868
custom_metrics=[
69-
("Message/Kombu/Exchange/Named/exchange/Received/Bytes", 1),
70-
("Message/Kombu/Exchange/Named/exchange/Received/Messages", 1),
69+
(f"Message/Kombu/Exchange/Named/{exchange.name}/Received/Bytes", 1),
70+
(f"Message/Kombu/Exchange/Named/{exchange.name}/Received/Messages", 1),
7171
(f"Python/MessageBroker/Kombu/{version}", 1),
72-
("MessageBroker/Kombu/Exchange/Named/exchange/Serialization/Value", 1),
72+
(f"MessageBroker/Kombu/Exchange/Named/{exchange.name}/Serialization/Value", 1),
7373
("MessageBroker/Kombu/Exchange/Named/Unknown/Serialization/Value", 1),
7474
],
7575
background_task=True,
@@ -82,12 +82,12 @@ def _test():
8282
_test()
8383

8484

85-
def test_custom_metrics_inactive_transaction(get_consumer_record): # , expected_missing_broker_metrics):
85+
def test_custom_metrics_inactive_transaction(get_consumer_record, exchange):
8686
@validate_transaction_metrics(
8787
"test_consumer:test_custom_metrics_inactive_transaction.<locals>._test",
8888
custom_metrics=[
89-
("Message/Kombu/Exchange/Named/exchange/Received/Bytes", None),
90-
("Message/Kombu/Exchange/Named/exchange/Received/Messages", None),
89+
(f"Message/Kombu/Exchange/Named/{exchange.name}/Received/Bytes", None),
90+
(f"Message/Kombu/Exchange/Named/{exchange.name}/Received/Messages", None),
9191
],
9292
# + expected_missing_broker_metrics,
9393
background_task=True,
@@ -123,14 +123,14 @@ def _test():
123123
_test()
124124

125125

126-
def test_distributed_tracing_headers(send_producer_message, consumer_connection, consumer_validate_dt):
126+
def test_distributed_tracing_headers(send_producer_message, consumer_connection, consumer_validate_dt, exchange):
127127
# Produce the messages inside a transaction, making sure to close it.
128128
@background_task()
129129
def _produce():
130130
send_producer_message()
131131

132132
@validate_transaction_metrics(
133-
"Named/exchange",
133+
f"Named/{exchange.name}",
134134
group="Message/Kombu/Exchange",
135135
rollup_metrics=[
136136
("Supportability/DistributedTrace/AcceptPayload/Success", None),

tests/messagebroker_kombu/test_producer.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@
2424
from newrelic.common.object_names import callable_name
2525

2626

27-
def test_trace_metrics(send_producer_message):
27+
def test_trace_metrics(send_producer_message, exchange):
2828
import kombu
2929

3030
version = kombu.__version__
3131

32-
scoped_metrics = [("MessageBroker/Kombu/Exchange/Produce/Named/exchange", 1)]
32+
scoped_metrics = [(f"MessageBroker/Kombu/Exchange/Produce/Named/{exchange.name}", 1)]
3333
unscoped_metrics = scoped_metrics
3434

3535
@validate_transaction_metrics(
@@ -38,7 +38,7 @@ def test_trace_metrics(send_producer_message):
3838
rollup_metrics=unscoped_metrics,
3939
custom_metrics=[
4040
(f"Python/MessageBroker/Kombu/{version}", 1),
41-
("MessageBroker/Kombu/Exchange/Named/exchange/Serialization/Value", 1),
41+
(f"MessageBroker/Kombu/Exchange/Named/{exchange.name}/Serialization/Value", 1),
4242
],
4343
background_task=True,
4444
)

0 commit comments

Comments
 (0)