"""Tests for Loki error types.""" from src.utils.errors import LokiAPIError, LokiTimeoutError class TestLokiAPIError: """Tests for LokiAPIError exception.""" def test_without_details(self): """Test LokiAPIError without Loki error details.""" error = LokiAPIError("Query failed") assert error.message == "Query failed" assert error.loki_error is None assert str(error) == "Query failed" def test_with_details(self): """Test LokiAPIError with Loki error details.""" error = LokiAPIError("Query failed", loki_error="Invalid query syntax") assert error.message == "Query failed" assert error.loki_error == "Invalid query syntax" assert str(error) == "Query failed. Error details: Invalid query syntax" class TestLokiTimeoutError: """Tests for LokiTimeoutError exception.""" def test_default_message(self): """Test LokiTimeoutError with default message.""" error = LokiTimeoutError() assert error.message == "Loki query timeout" assert str(error) == "Loki query timeout" def test_custom_message(self): """Test LokiTimeoutError with custom message.""" error = LokiTimeoutError("Query took too long") assert error.message == "Query took too long" assert str(error) == "Query took too long"