1515
1616from logging import WARNING
1717from unittest import TestCase
18- from unittest .mock import Mock
18+ from unittest .mock import Mock , patch
1919
2020from opentelemetry .metrics import Meter , NoOpMeter
2121
@@ -82,8 +82,10 @@ def create_observable_up_down_counter(
8282
8383class 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" ,
0 commit comments