File size: 968 Bytes
a8b3f00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import os
from unittest.mock import Mock, patch

import pytest

from core.model_runtime.errors.validate import CredentialsValidateFailedError
from core.model_runtime.model_providers.voyage.voyage import VoyageProvider


def test_validate_provider_credentials():
    provider = VoyageProvider()

    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 = {
            "object": "list",
            "data": [{"object": "embedding", "embedding": [0.23333 for _ in range(1024)], "index": 0}],
            "model": "voyage-3",
            "usage": {"total_tokens": 1},
        }
        mock_response.status_code = 200
        mock_post.return_value = mock_response
        provider.validate_provider_credentials(credentials={"api_key": os.environ.get("VOYAGE_API_KEY")})