import os from unittest.mock import Mock, patch import pytest from core.model_runtime.errors.validate import CredentialsValidateFailedError from core.model_runtime.model_providers.mixedbread.mixedbread import MixedBreadProvider def test_validate_provider_credentials(): provider = MixedBreadProvider() with pytest.raises(CredentialsValidateFailedError): provider.validate_provider_credentials(credentials={"api_key": "hahahaha"}) with patch("requests.post") as mock_post: mock_response = Mock() mock_response.json.return_value = { "usage": {"prompt_tokens": 3, "total_tokens": 3}, "model": "mixedbread-ai/mxbai-embed-large-v1", "data": [{"embedding": [0.23333 for _ in range(1024)], "index": 0, "object": "embedding"}], "object": "list", "normalized": "true", "encoding_format": "float", "dimensions": 1024, } mock_response.status_code = 200 mock_post.return_value = mock_response provider.validate_provider_credentials(credentials={"api_key": os.environ.get("MIXEDBREAD_API_KEY")})