add DeepSeek AI provider
This commit is contained in:
@@ -123,6 +123,26 @@ class BrowserOnlyAppTests(unittest.TestCase):
|
||||
self.assertTrue(body["ok"])
|
||||
self.assertEqual(http_json.call_args.args[0:2], ("POST", "https://inference-api.nousresearch.com/v1/chat/completions"))
|
||||
|
||||
def test_deepseek_provider_uses_fixed_endpoint_and_default_models(self):
|
||||
status, body = self.request("GET", "/api/ai/models?provider=deepseek")
|
||||
self.assertEqual(status, 200)
|
||||
self.assertEqual(body["base_url"], "https://api.deepseek.com/v1")
|
||||
self.assertEqual([item["id"] for item in body["models"]], ["deepseek-chat", "deepseek-reasoner"])
|
||||
status, body = self.request("POST", "/api/settings", {"ai": {"AI_PROVIDER": "deepseek", "AI_API_KEY": "deepseek-test-key"}})
|
||||
self.assertEqual(status, 200)
|
||||
self.assertEqual(body["ai"]["base_url"], "https://api.deepseek.com/v1")
|
||||
self.assertEqual(body["ai"]["model"], "deepseek-chat")
|
||||
self.assertTrue(body["ai"]["configured"])
|
||||
status, body = self.request("GET", "/api/config")
|
||||
self.assertEqual(status, 200)
|
||||
self.assertEqual(body["ai_provider"], "deepseek")
|
||||
self.assertNotIn("deepseek-test-key", json.dumps(body))
|
||||
with patch("api.server.http_json", return_value={"choices": [{"message": {"content": "OK"}}]}) as http_json:
|
||||
status, body = self.request("POST", "/api/ai/test", {})
|
||||
self.assertEqual(status, 200)
|
||||
self.assertTrue(body["ok"])
|
||||
self.assertEqual(http_json.call_args.args[0:2], ("POST", "https://api.deepseek.com/v1/chat/completions"))
|
||||
|
||||
def test_provider_errors_are_not_mislabelled_as_maps_errors(self):
|
||||
class CloudflareResponse:
|
||||
def read(self):
|
||||
|
||||
Reference in New Issue
Block a user