Spaces:
Paused
Paused
| from test.util.abstract_integration_test import AbstractPostgresTest | |
| from test.util.mock_user import mock_webui_user | |
| class TestModels(AbstractPostgresTest): | |
| BASE_PATH = "/api/v1/models" | |
| def setup_class(cls): | |
| super().setup_class() | |
| from open_webui.models.models import Model | |
| cls.models = Model | |
| def test_models(self): | |
| with mock_webui_user(id="2"): | |
| response = self.fast_api_client.get(self.create_url("/")) | |
| assert response.status_code == 200 | |
| assert len(response.json()) == 0 | |
| with mock_webui_user(id="2"): | |
| response = self.fast_api_client.post( | |
| self.create_url("/add"), | |
| json={ | |
| "id": "my-model", | |
| "base_model_id": "base-model-id", | |
| "name": "Hello World", | |
| "meta": { | |
| "profile_image_url": "/static/favicon.png", | |
| "description": "description", | |
| "capabilities": None, | |
| "model_config": {}, | |
| }, | |
| "params": {}, | |
| }, | |
| ) | |
| assert response.status_code == 200 | |
| with mock_webui_user(id="2"): | |
| response = self.fast_api_client.get(self.create_url("/")) | |
| assert response.status_code == 200 | |
| assert len(response.json()) == 1 | |
| with mock_webui_user(id="2"): | |
| response = self.fast_api_client.get( | |
| self.create_url(query_params={"id": "my-model"}) | |
| ) | |
| assert response.status_code == 200 | |
| data = response.json()[0] | |
| assert data["id"] == "my-model" | |
| assert data["name"] == "Hello World" | |
| with mock_webui_user(id="2"): | |
| response = self.fast_api_client.delete( | |
| self.create_url("/delete?id=my-model") | |
| ) | |
| assert response.status_code == 200 | |
| with mock_webui_user(id="2"): | |
| response = self.fast_api_client.get(self.create_url("/")) | |
| assert response.status_code == 200 | |
| assert len(response.json()) == 0 | |