diff --git a/tests/observability/test_multi_exporters.py b/tests/observability/test_multi_exporters.py index 349aaf1..fb84cb8 100644 --- a/tests/observability/test_multi_exporters.py +++ b/tests/observability/test_multi_exporters.py @@ -113,7 +113,7 @@ def test_empty_list_uses_console_exporter(self): @mock.patch.dict("os.environ", {"BASALT_OTEL_EXPORTER_OTLP_ENDPOINT": "http://localhost:4318"}, clear=False) @mock.patch("basalt.observability.instrumentation.OTLPSpanExporter") def test_user_exporters_plus_env_exporter(self, mock_otlp_exporter): - """Test that user exporters are combined with environment exporter.""" + """Test that user exporters are used instead of environment exporter.""" # Mock the OTLP exporter creation mock_env_exporter = mock.Mock() mock_otlp_exporter.return_value = mock_env_exporter @@ -127,12 +127,13 @@ def test_user_exporters_plus_env_exporter(self, mock_otlp_exporter): manager = InstrumentationManager() manager.initialize(config) - # Verify both exporters were used + # Verify user exporter was used provider = manager._tracer_provider self.assertIsInstance(provider, TracerProvider) - # Should have 2 exporters + 4 Basalt processors = 6 total processors + # Should have 1 exporter + 4 Basalt processors = 5 total processors # Basalt processors: Context, CallEvaluator, ShouldEvaluate, AutoInstrumentation - self.assertEqual(len(provider._active_span_processor._span_processors), 6) + # Note: Environment exporter is only used if no user exporter is provided + self.assertEqual(len(provider._active_span_processor._span_processors), 5) def test_mixed_console_and_otlp_exporters(self): """Test mix of ConsoleSpanExporter and regular exporters."""