Skip to content

Commit c500b15

Browse files
committed
Start writing test
1 parent 06dee51 commit c500b15

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

opentelemetry-sdk/tests/test_configurator.py

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,14 @@
2121
from typing import Iterable, Optional, Sequence
2222
from unittest import TestCase, mock
2323
from unittest.mock import Mock, patch
24+
from requests import Session
25+
from grpc import ChannelCredentials
2426

2527
from pytest import raises
2628

2729
from opentelemetry import trace
2830
from opentelemetry.context import Context
31+
from opentelemetry.sdk.environment_variables import OTEL_PYTHON_EXPORTER_OTLP_LOGS_CREDENTIAL_PROVIDER
2932
from opentelemetry.environment_variables import OTEL_PYTHON_ID_GENERATOR
3033
from opentelemetry.sdk._configuration import (
3134
_EXPORTER_OTLP,
@@ -39,6 +42,7 @@
3942
_import_id_generator,
4043
_import_sampler,
4144
_init_logging,
45+
_init_exporter,
4246
_init_metrics,
4347
_init_tracing,
4448
_initialize_components,
@@ -178,7 +182,7 @@ def shutdown(self, timeout_millis: float = 30_000, **kwargs) -> None:
178182

179183

180184
class DummyOTLPMetricExporter:
181-
def __init__(self, compression: str | None = None, *args, **kwargs):
185+
def __init__(self, compression: str | None = None, session: Session | None, *args, **kwargs):
182186
self.export_called = False
183187
self.compression = compression
184188

@@ -203,7 +207,7 @@ def shutdown(self):
203207

204208

205209
class OTLPSpanExporter:
206-
def __init__(self, compression: str | None = None, *args, **kwargs):
210+
def __init__(self, compression: str | None = None, credentials: ChannelCredentials | None = None, *args, **kwargs):
207211
self.compression = compression
208212

209213

@@ -407,6 +411,17 @@ def test_trace_init_custom_id_generator(self, mock_entry_points):
407411
provider = self.set_provider_mock.call_args[0][0]
408412
self.assertIsInstance(provider.id_generator, CustomIdGenerator)
409413

414+
415+
@patch.dict(environ, {OTEL_PYTHON_EXPORTER_OTLP_LOGS_CREDENTIAL_PROVIDER: "custom_session"})
416+
@patch("opentelemetry.sdk._configuration.entry_points")
417+
def check_that_credential_envvar_gets_passed_to_exporter(self, mock_entry_points):
418+
mock_entry_points.configure_mock(
419+
return_value=[
420+
IterEntryPoint("custom_session", Session())
421+
]
422+
)
423+
exporter = _init_exporter('traces', None, OTLPSpanExporter)
424+
410425
@patch.dict(
411426
"os.environ", {OTEL_TRACES_SAMPLER: "non_existent_entry_point"}
412427
)

0 commit comments

Comments
 (0)