From 2dc4a454551f5f131b90b77dd077a9bcb05e43d8 Mon Sep 17 00:00:00 2001 From: avzis Date: Sun, 2 Oct 2022 15:32:15 +0300 Subject: [PATCH 1/2] add test for asgi using NoOpTracerProvider --- .../tests/test_asgi_middleware.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py index e6b75d7125..bbe4a532ed 100644 --- a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py +++ b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py @@ -300,6 +300,16 @@ def test_custom_tracer_provider_otel_asgi(self): span.resource.attributes["service-test-key"], "value" ) + def test_no_op_tracer_provider_otel_asgi(self): + app = otel_asgi.OpenTelemetryMiddleware( + simple_asgi, tracer_provider=trace_api.NoOpTracerProvider() + ) + self.seed_app(app) + self.send_default_request() + response_start, response_body, *_ = self.get_all_output() + self.assertEqual(response_body["body"], b"*") + self.assertEqual(response_start["status"], 200) + def test_behavior_with_scope_server_as_none(self): """Test that middleware is ok when server is none in scope.""" From 42cd4ff7d30128a157867dd9fd329bcb4348e7e9 Mon Sep 17 00:00:00 2001 From: avzis Date: Sun, 2 Oct 2022 17:03:14 +0300 Subject: [PATCH 2/2] update changelog --- CHANGELOG.md | 2 ++ .../tests/test_asgi_middleware.py | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9a2b306157..3475943468 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ([#1197](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1197)) - Add metric instumentation for flask ([#1186](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1186)) +- Add a test for asgi using NoOpTracerProvider + ([#1367](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1367)) ## [1.12.0rc2-0.32b0](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.12.0rc2-0.32b0) - 2022-07-01 diff --git a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py index bbe4a532ed..1b00ee1279 100644 --- a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py +++ b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py @@ -306,10 +306,14 @@ def test_no_op_tracer_provider_otel_asgi(self): ) self.seed_app(app) self.send_default_request() + response_start, response_body, *_ = self.get_all_output() self.assertEqual(response_body["body"], b"*") self.assertEqual(response_start["status"], 200) + span_list = self.memory_exporter.get_finished_spans() + self.assertEqual(len(span_list), 0) + def test_behavior_with_scope_server_as_none(self): """Test that middleware is ok when server is none in scope."""