Skip to content

Commit c595be1

Browse files
committed
Stop using assertNoLogs to have green tests on py < 3.10
1 parent 22e7495 commit c595be1

File tree

2 files changed

+21
-25
lines changed

2 files changed

+21
-25
lines changed

opentelemetry-api/tests/metrics/test_meter.py

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
from logging import WARNING
1717
from unittest import TestCase
18-
from unittest.mock import Mock
18+
from unittest.mock import Mock, patch
1919

2020
from opentelemetry.metrics import Meter, NoOpMeter
2121

@@ -82,8 +82,10 @@ def create_observable_up_down_counter(
8282

8383
class TestMeter(TestCase):
8484
# pylint: disable=no-member
85-
def test_repeated_instrument_names(self):
86-
try:
85+
# TODO: convert to assertNoLogs instead of mocking logger when 3.10 is baseline
86+
@patch("opentelemetry.metrics._internal._logger")
87+
def test_repeated_instrument_names(self, logger_mock):
88+
with self.assertNotRaises(Exception):
8789
test_meter = NoOpMeter("name")
8890

8991
test_meter.create_counter("counter")
@@ -95,32 +97,28 @@ def test_repeated_instrument_names(self):
9597
test_meter.create_observable_up_down_counter(
9698
"observable_up_down_counter", Mock()
9799
)
98-
except Exception as error: # pylint: disable=broad-exception-caught
99-
self.fail(f"Unexpected exception raised {error}")
100100

101101
for instrument_name in [
102102
"counter",
103103
"up_down_counter",
104104
"histogram",
105105
"gauge",
106106
]:
107-
with self.assertNoLogs(level=WARNING):
108-
getattr(test_meter, f"create_{instrument_name}")(
109-
instrument_name
110-
)
107+
getattr(test_meter, f"create_{instrument_name}")(instrument_name)
108+
logger_mock.warning.assert_not_called()
111109

112110
for instrument_name in [
113111
"observable_counter",
114112
"observable_gauge",
115113
"observable_up_down_counter",
116114
]:
117-
with self.assertNoLogs(level=WARNING):
118-
getattr(test_meter, f"create_{instrument_name}")(
119-
instrument_name, Mock()
120-
)
115+
getattr(test_meter, f"create_{instrument_name}")(
116+
instrument_name, Mock()
117+
)
118+
logger_mock.warning.assert_not_called()
121119

122120
def test_repeated_instrument_names_with_different_advisory(self):
123-
try:
121+
with self.assertNotRaises(Exception):
124122
test_meter = NoOpMeter("name")
125123

126124
test_meter.create_counter("counter")
@@ -132,8 +130,6 @@ def test_repeated_instrument_names_with_different_advisory(self):
132130
test_meter.create_observable_up_down_counter(
133131
"observable_up_down_counter", Mock()
134132
)
135-
except Exception as error: # pylint: disable=broad-exception-caught
136-
self.fail(f"Unexpected exception raised {error}")
137133

138134
for instrument_name in [
139135
"counter",

opentelemetry-sdk/tests/metrics/test_metrics.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,9 @@ class TestMeter(TestCase):
431431
def setUp(self):
432432
self.meter = Meter(Mock(), Mock())
433433

434-
def test_repeated_instrument_names(self):
434+
# TODO: convert to assertNoLogs instead of mocking logger when 3.10 is baseline
435+
@patch("opentelemetry.sdk.metrics._internal._logger")
436+
def test_repeated_instrument_names(self, logger_mock):
435437
with self.assertNotRaises(Exception):
436438
self.meter.create_counter("counter")
437439
self.meter.create_up_down_counter("up_down_counter")
@@ -453,20 +455,18 @@ def test_repeated_instrument_names(self):
453455
"histogram",
454456
"gauge",
455457
]:
456-
with self.assertNoLogs(level=WARNING):
457-
getattr(self.meter, f"create_{instrument_name}")(
458-
instrument_name
459-
)
458+
getattr(self.meter, f"create_{instrument_name}")(instrument_name)
459+
logger_mock.warning.assert_not_called()
460460

461461
for instrument_name in [
462462
"observable_counter",
463463
"observable_gauge",
464464
"observable_up_down_counter",
465465
]:
466-
with self.assertNoLogs(level=WARNING):
467-
getattr(self.meter, f"create_{instrument_name}")(
468-
instrument_name, callbacks=[Mock()]
469-
)
466+
getattr(self.meter, f"create_{instrument_name}")(
467+
instrument_name, callbacks=[Mock()]
468+
)
469+
logger_mock.warning.assert_not_called()
470470

471471
def test_repeated_instrument_names_with_different_advisory(self):
472472
with self.assertNotRaises(Exception):

0 commit comments

Comments
 (0)