diff --git a/tests/test_litellm/integrations/test_langfuse_otel.py b/tests/test_litellm/integrations/test_langfuse_otel.py index 9fed4ef0d69..6a55a1b3106 100644 --- a/tests/test_litellm/integrations/test_langfuse_otel.py +++ b/tests/test_litellm/integrations/test_langfuse_otel.py @@ -1,5 +1,6 @@ import json import os +from typing import Final from unittest.mock import MagicMock, patch import pytest @@ -483,9 +484,11 @@ class TestLangfuseOtelIntegration: assert isinstance(config, OpenTelemetryConfig) # Endpoint assertion removed as side effect is gone - def test_request_metadata_is_emitted_under_langfuse_observation_and_trace_metadata_keys(self, monkeypatch): + def test_request_metadata_is_emitted_under_langfuse_observation_and_trace_metadata_keys( + self, monkeypatch: pytest.MonkeyPatch + ) -> None: monkeypatch.setattr(litellm, "redact_user_api_key_info", False) - request_metadata = { + request_metadata: Final = { "user_api_key_hash": "hash123", "user_api_key_alias": "prod-key", "user_api_key_user_id": "user-1", @@ -496,22 +499,18 @@ class TestLangfuseOtelIntegration: "requester_ip_address": "10.0.0.1", "requester_metadata": {"ticket": "LIT-8283"}, } - kwargs = { + kwargs: Final = { "litellm_params": {"metadata": {}}, "standard_logging_object": {"metadata": request_metadata}, } - with patch( - "litellm.integrations.arize._utils.safe_set_attribute" - ) as mock_safe_set_attribute: + with patch("litellm.integrations.arize._utils.safe_set_attribute") as mock_safe_set_attribute: LangfuseOtelLogger._set_langfuse_specific_attributes(MagicMock(), kwargs, None) - actual = {call.args[1]: call.args[2] for call in mock_safe_set_attribute.call_args_list} + actual: Final = {call.args[1]: call.args[2] for call in mock_safe_set_attribute.call_args_list} assert json.loads(actual["langfuse.observation.metadata"]) == {**request_metadata} - assert { - key: value for key, value in actual.items() if key.startswith("langfuse.trace.metadata.") - } == { + assert {key: value for key, value in actual.items() if key.startswith("langfuse.trace.metadata.")} == { "langfuse.trace.metadata.user_api_key_alias": "prod-key", "langfuse.trace.metadata.user_api_key_user_id": "user-1", "langfuse.trace.metadata.user_api_key_end_user_id": "end-user-1", @@ -519,9 +518,9 @@ class TestLangfuseOtelIntegration: "langfuse.trace.metadata.user_api_key_team_alias": "team-a", } - def test_request_metadata_redaction_matches_vanilla_langfuse(self, monkeypatch): + def test_request_metadata_redaction_matches_vanilla_langfuse(self, monkeypatch: pytest.MonkeyPatch) -> None: monkeypatch.setattr(litellm, "redact_user_api_key_info", True) - request_metadata = { + request_metadata: Final = { "user_api_key_hash": "hash123", "user_api_key_alias": "prod-key", "user_api_key_user_id": "user-1", @@ -532,17 +531,15 @@ class TestLangfuseOtelIntegration: "requester_ip_address": "10.0.0.1", "requester_metadata": {"ticket": "LIT-8283"}, } - kwargs = { + kwargs: Final = { "litellm_params": {"metadata": {}}, "standard_logging_object": {"metadata": request_metadata}, } - with patch( - "litellm.integrations.arize._utils.safe_set_attribute" - ) as mock_safe_set_attribute: + with patch("litellm.integrations.arize._utils.safe_set_attribute") as mock_safe_set_attribute: LangfuseOtelLogger._set_langfuse_specific_attributes(MagicMock(), kwargs, None) - actual = {call.args[1]: call.args[2] for call in mock_safe_set_attribute.call_args_list} + actual: Final = {call.args[1]: call.args[2] for call in mock_safe_set_attribute.call_args_list} assert json.loads(actual["langfuse.observation.metadata"]) == { "spend_logs_metadata": {"env": "prod"}, @@ -551,20 +548,18 @@ class TestLangfuseOtelIntegration: } assert not [key for key in actual if key.startswith("langfuse.trace.metadata.")] - def test_request_metadata_keys_are_absent_without_standard_logging_object(self, monkeypatch): + def test_request_metadata_keys_are_absent_without_standard_logging_object( + self, monkeypatch: pytest.MonkeyPatch + ) -> None: monkeypatch.setattr(litellm, "redact_user_api_key_info", False) - kwargs = {"litellm_params": {"metadata": {"trace_metadata": {"k": "v"}}}} + kwargs: Final = {"litellm_params": {"metadata": {"trace_metadata": {"k": "v"}}}} - with patch( - "litellm.integrations.arize._utils.safe_set_attribute" - ) as mock_safe_set_attribute: + with patch("litellm.integrations.arize._utils.safe_set_attribute") as mock_safe_set_attribute: LangfuseOtelLogger._set_langfuse_specific_attributes(MagicMock(), kwargs, None) - actual = {call.args[1]: call.args[2] for call in mock_safe_set_attribute.call_args_list} + actual: Final = {call.args[1]: call.args[2] for call in mock_safe_set_attribute.call_args_list} - assert [key for key in actual if key.startswith("langfuse.trace.metadata")] == [ - "langfuse.trace.metadata" - ] + assert [key for key in actual if key.startswith("langfuse.trace.metadata")] == ["langfuse.trace.metadata"] assert "langfuse.observation.metadata" not in actual