Skip to content

Commit 9f84183

Browse files
committed
update tests
1 parent e8a1ec9 commit 9f84183

File tree

3 files changed

+30
-4
lines changed

3 files changed

+30
-4
lines changed

aws-opentelemetry-distro/src/amazon/opentelemetry/distro/exporter/otlp/aws/common/aws_auth_session.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class AwsAuthSession(requests.Session):
3434
service (str): The AWS service name for signing (e.g., "logs" or "xray")
3535
"""
3636

37-
def __init__(self, aws_region: str, service: str, session: Session = Session()):
37+
def __init__(self, aws_region: str, service: str, session: Session):
3838
self._aws_region: str = aws_region
3939
self._service: str = service
4040
self._session: Session = session

aws-opentelemetry-distro/tests/amazon/opentelemetry/distro/exporter/otlp/aws/common/test_aws_auth_session.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import requests
77
from botocore.credentials import Credentials
88

9+
from amazon.opentelemetry.distro._utils import get_aws_session
910
from amazon.opentelemetry.distro.exporter.otlp.aws.common.aws_auth_session import AwsAuthSession
1011

1112
AWS_OTLP_TRACES_ENDPOINT = "https://xray.us-east-1.amazonaws.com/v1/traces"
@@ -24,7 +25,7 @@ class TestAwsAuthSession(TestCase):
2425
def test_aws_auth_session_no_credentials(self, _, __):
2526
"""Tests that aws_auth_session will not inject SigV4 Headers if retrieving credentials returns None."""
2627

27-
session = AwsAuthSession("us-east-1", "xray")
28+
session = AwsAuthSession("us-east-1", "xray", get_aws_session())
2829
actual_headers = {"test": "test"}
2930

3031
session.request("POST", AWS_OTLP_TRACES_ENDPOINT, data="", headers=actual_headers)
@@ -38,7 +39,7 @@ def test_aws_auth_session_no_credentials(self, _, __):
3839
def test_aws_auth_session(self, _, __):
3940
"""Tests that aws_auth_session will inject SigV4 Headers if botocore is installed."""
4041

41-
session = AwsAuthSession("us-east-1", "xray")
42+
session = AwsAuthSession("us-east-1", "xray", get_aws_session())
4243
actual_headers = {"test": "test"}
4344

4445
session.request("POST", AWS_OTLP_TRACES_ENDPOINT, data="", headers=actual_headers)

aws-opentelemetry-distro/tests/amazon/opentelemetry/distro/exporter/otlp/aws/logs/test_otlp_aws_logs_exporter.py

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,32 @@ def test_export_interrupted_by_shutdown(self, mock_request, mock_wait):
201201
# Should make one request, then get interrupted during retry wait
202202
self.assertEqual(mock_request.call_count, 1)
203203
self.assertEqual(result, LogExportResult.FAILURE)
204-
mock_wait.assert_called_once()
204+
205+
@patch("requests.Session.post", return_value=good_response)
206+
def test_export_with_log_group_and_stream_headers(self, mock_request):
207+
"""Tests that log_group and log_stream are properly set as headers when provided."""
208+
log_group = "test-log-group"
209+
log_stream = "test-log-stream"
210+
211+
exporter = OTLPAwsLogExporter(
212+
session=get_aws_session(),
213+
aws_region="us-east-1",
214+
endpoint=self._ENDPOINT,
215+
log_group=log_group,
216+
log_stream=log_stream,
217+
)
218+
219+
result = exporter.export(self.logs)
220+
221+
mock_request.assert_called_once()
222+
self.assertEqual(result, LogExportResult.SUCCESS)
223+
224+
# Verify headers contain log group and stream
225+
session_headers = exporter._session.headers
226+
self.assertIn("x-aws-log-group", session_headers)
227+
self.assertIn("x-aws-log-stream", session_headers)
228+
self.assertEqual(session_headers["x-aws-log-group"], log_group)
229+
self.assertEqual(session_headers["x-aws-log-stream"], log_stream)
205230

206231
@staticmethod
207232
def generate_test_log_data(count=5):

0 commit comments

Comments
 (0)