@@ -45,7 +45,7 @@ def setUp(self):
4545 del os .environ [var ]
4646
4747 # Preserve the original sys.path
48- # self.original_sys_path = sys.path.copy()
48+ self .original_sys_path = sys .path .copy ()
4949
5050 def tearDown (self ):
5151 # Clear all env vars first
@@ -58,7 +58,7 @@ def tearDown(self):
5858 os .environ [var ] = value
5959
6060 # Restore the original sys.path
61- # sys.path[:] = self.original_sys_path
61+ sys .path [:] = self .original_sys_path
6262
6363 def test_package_available (self ):
6464 try :
@@ -234,30 +234,34 @@ def test_configure_with_agent_observability_endpoints_already_set(
234234 self .assertEqual (os .environ .get ("OTEL_TRACES_EXPORTER" ), "otlp" )
235235 self .assertEqual (os .environ .get ("OTEL_LOGS_EXPORTER" ), "otlp" )
236236
237- # def test_user_defined_propagators(self):
238- # """Test that user-defined propagators are respected"""
239- # # Set user-defined propagators
240- # os.environ["OTEL_PROPAGATORS"] = "xray"
241- #
242- # # Force the reload of the propagate module otherwise the above environment
243- # # variable doesn't taker effect.
244- # importlib.reload(propagate)
245- #
246- # distro = AwsOpenTelemetryDistro()
247- # distro._configure()
248- #
249- # # Verify that user-defined propagators are preserved
250- # propagators = propagate.get_global_textmap()
251- # self.assertTrue(isinstance(propagators, CompositePropagator))
252- # expected_propagators = ["AwsXRayPropagator"]
253- # individual_propagators = propagators._propagators
254- # self.assertEqual(1, len(individual_propagators))
255- # actual_propagators = []
256- # for prop in individual_propagators:
257- # actual_propagators.append(type(prop).__name__)
258- # self.assertEqual(expected_propagators, actual_propagators)
259-
260- def test_otel_propagators_added_when_not_user_defined (self ):
237+ @patch ("amazon.opentelemetry.distro.aws_opentelemetry_distro.apply_instrumentation_patches" )
238+ @patch ("amazon.opentelemetry.distro.aws_opentelemetry_distro.OpenTelemetryDistro._configure" )
239+ def test_user_defined_propagators (self , mock_super_configure , mock_apply_patches ):
240+ """Test that user-defined propagators are respected"""
241+ # Set user-defined propagators
242+ os .environ ["OTEL_PROPAGATORS" ] = "xray"
243+
244+ # Force the reload of the propagate module otherwise the above environment
245+ # variable doesn't taker effect.
246+ importlib .reload (propagate )
247+
248+ distro = AwsOpenTelemetryDistro ()
249+ distro ._configure ()
250+
251+ # Verify that user-defined propagators are preserved
252+ propagators = propagate .get_global_textmap ()
253+ self .assertTrue (isinstance (propagators , CompositePropagator ))
254+ expected_propagators = ["AwsXRayPropagator" ]
255+ individual_propagators = propagators ._propagators
256+ self .assertEqual (1 , len (individual_propagators ))
257+ actual_propagators = []
258+ for prop in individual_propagators :
259+ actual_propagators .append (type (prop ).__name__ )
260+ self .assertEqual (expected_propagators , actual_propagators )
261+
262+ @patch ("amazon.opentelemetry.distro.aws_opentelemetry_distro.apply_instrumentation_patches" )
263+ @patch ("amazon.opentelemetry.distro.aws_opentelemetry_distro.OpenTelemetryDistro._configure" )
264+ def test_otel_propagators_added_when_not_user_defined (self , mock_super_configure , mock_apply_patches ):
261265 distro = AwsOpenTelemetryDistro ()
262266 distro ._configure ()
263267
0 commit comments