Skip to content

Commit bb41e83

Browse files
committed
update unit tests after merging in baggage processor support changes
1 parent 704dcb6 commit bb41e83

File tree

1 file changed

+12
-21
lines changed

1 file changed

+12
-21
lines changed

aws-opentelemetry-distro/tests/amazon/opentelemetry/distro/test_aws_opentelementry_configurator.py

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -362,24 +362,21 @@ def test_customize_span_exporter_with_agent_observability(self):
362362
def test_customize_span_processors_with_agent_observability(self):
363363
mock_tracer_provider: TracerProvider = MagicMock()
364364

365-
# Test that BaggageSpanProcessor is not added when agent observability is disabled
366365
os.environ.pop("AGENT_OBSERVABILITY_ENABLED", None)
367366
_customize_span_processors(mock_tracer_provider, Resource.get_empty())
368367
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 0)
369368

370-
# Reset mock for next test
371369
mock_tracer_provider.reset_mock()
372370

373-
# Test that BaggageSpanProcessor is added when agent observability is enabled
374371
os.environ["AGENT_OBSERVABILITY_ENABLED"] = "true"
375372
_customize_span_processors(mock_tracer_provider, Resource.get_empty())
376-
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 1)
373+
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 2)
377374

378-
# Verify the added processor is BaggageSpanProcessor
379-
added_processor = mock_tracer_provider.add_span_processor.call_args_list[0].args[0]
380-
self.assertIsInstance(added_processor, BaggageSpanProcessor)
375+
first_processor = mock_tracer_provider.add_span_processor.call_args_list[0].args[0]
376+
self.assertIsInstance(first_processor, BatchUnsampledSpanProcessor)
377+
second_processor = mock_tracer_provider.add_span_processor.call_args_list[1].args[0]
378+
self.assertIsInstance(second_processor, BaggageSpanProcessor)
381379

382-
# Clean up
383380
os.environ.pop("AGENT_OBSERVABILITY_ENABLED", None)
384381

385382
def test_baggage_span_processor_session_id_filtering(self):
@@ -660,18 +657,15 @@ def capture_exporter(*args, **kwargs):
660657

661658
def test_customize_span_processors(self):
662659
mock_tracer_provider: TracerProvider = MagicMock()
663-
# Clean up environment to ensure consistent test state
664660
os.environ.pop("AGENT_OBSERVABILITY_ENABLED", None)
665661
os.environ.pop("OTEL_AWS_APPLICATION_SIGNALS_ENABLED", None)
666662
os.environ.pop("OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED", None)
667663

668664
_customize_span_processors(mock_tracer_provider, Resource.get_empty())
669665
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 0)
670666

671-
# Reset mock for next test
672667
mock_tracer_provider.reset_mock()
673668

674-
# Test application signals only
675669
os.environ.setdefault("OTEL_AWS_APPLICATION_SIGNALS_ENABLED", "True")
676670
os.environ.setdefault("OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED", "False")
677671
_customize_span_processors(mock_tracer_provider, Resource.get_empty())
@@ -681,19 +675,17 @@ def test_customize_span_processors(self):
681675
second_processor: SpanProcessor = mock_tracer_provider.add_span_processor.call_args_list[1].args[0]
682676
self.assertIsInstance(second_processor, AwsSpanMetricsProcessor)
683677

684-
# Reset mock for next test
685678
mock_tracer_provider.reset_mock()
686679

687-
# Test both agent observability and application signals enabled
688680
os.environ.setdefault("AGENT_OBSERVABILITY_ENABLED", "true")
689681
_customize_span_processors(mock_tracer_provider, Resource.get_empty())
690-
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 3)
682+
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 4)
691683

692-
# Verify processors are added in the expected order
693684
processors = [call.args[0] for call in mock_tracer_provider.add_span_processor.call_args_list]
694-
self.assertIsInstance(processors[0], BaggageSpanProcessor) # Agent observability processor added first
695-
self.assertIsInstance(processors[1], AttributePropagatingSpanProcessor) # Application signals processors
696-
self.assertIsInstance(processors[2], AwsSpanMetricsProcessor)
685+
self.assertIsInstance(processors[0], BatchUnsampledSpanProcessor)
686+
self.assertIsInstance(processors[1], BaggageSpanProcessor)
687+
self.assertIsInstance(processors[2], AttributePropagatingSpanProcessor)
688+
self.assertIsInstance(processors[3], AwsSpanMetricsProcessor)
697689

698690
def test_customize_span_processors_lambda(self):
699691
mock_tracer_provider: TracerProvider = MagicMock()
@@ -800,19 +792,18 @@ def test_export_unsampled_span_for_lambda(self):
800792
def test_export_unsampled_span_for_agent_observability(self):
801793
mock_tracer_provider: TracerProvider = MagicMock()
802794

803-
# Test when agent observability is disabled (default)
804795
_export_unsampled_span_for_agent_observability(mock_tracer_provider, Resource.get_empty())
805796
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 0)
806797

807-
# Test when agent observability is enabled with AWS endpoint (the default case)
798+
mock_tracer_provider.reset_mock()
799+
808800
os.environ["AGENT_OBSERVABILITY_ENABLED"] = "true"
809801
os.environ["OTEL_EXPORTER_OTLP_TRACES_ENDPOINT"] = "https://xray.us-east-1.amazonaws.com/v1/traces"
810802
_export_unsampled_span_for_agent_observability(mock_tracer_provider, Resource.get_empty())
811803
self.assertEqual(mock_tracer_provider.add_span_processor.call_count, 1)
812804
processor: SpanProcessor = mock_tracer_provider.add_span_processor.call_args_list[0].args[0]
813805
self.assertIsInstance(processor, BatchUnsampledSpanProcessor)
814806

815-
# Clean up
816807
os.environ.pop("AGENT_OBSERVABILITY_ENABLED", None)
817808
os.environ.pop("OTEL_EXPORTER_OTLP_TRACES_ENDPOINT", None)
818809

0 commit comments

Comments
 (0)