feat: add multi-server control panel and host-aware sync
This commit is contained in:
@@ -47,6 +47,31 @@ def test_get_models(client, mock_models_response):
|
||||
assert data["models"][0]["name"] == "llama2"
|
||||
|
||||
|
||||
def test_get_models_with_host_override(client, mock_models_response):
|
||||
"""Test host override is propagated to upstream models API call."""
|
||||
with patch("requests.get") as mock_get:
|
||||
mock_response = MagicMock()
|
||||
mock_response.status_code = 200
|
||||
mock_response.json.return_value = mock_models_response
|
||||
mock_get.return_value = mock_response
|
||||
|
||||
response = client.get("/api/v1/models", params={"host": "http://example-host:11434"})
|
||||
assert response.status_code == 200
|
||||
assert mock_get.call_args.args[0] == "http://example-host:11434/api/tags"
|
||||
|
||||
|
||||
def test_health_with_invalid_host_returns_422(client):
|
||||
"""Invalid host query parameter must be rejected."""
|
||||
response = client.get("/api/v1/health", params={"host": "not-a-url"})
|
||||
assert response.status_code == 422
|
||||
|
||||
|
||||
def test_model_show_with_invalid_host_returns_422(client):
|
||||
"""Invalid host query parameter must be rejected on show endpoint."""
|
||||
response = client.get("/api/v1/models/llama2/show", params={"host": "localhost:11434"})
|
||||
assert response.status_code == 422
|
||||
|
||||
|
||||
def test_get_running_models(client):
|
||||
"""Test getting running models (ollama ps)."""
|
||||
with patch("requests.get") as mock_get:
|
||||
|
||||
Reference in New Issue
Block a user