From b1db660d709dfa515037e60d7c1e09a6d620177c Mon Sep 17 00:00:00 2001 From: root Date: Wed, 15 Apr 2026 10:50:27 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=90=88=E5=B9=B6=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E7=9B=B8=E5=85=B3Packet=E7=B1=BB=E5=9E=8B=E4=B8=BAGET?= =?UTF-8?q?=5FSETTINGS/SET=5FSETTINGS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/client.py | 43 ++++++++++++---------------------- tests/test_core/test_packet.py | 36 ++++++++++++++-------------- 2 files changed, 34 insertions(+), 45 deletions(-) diff --git a/core/client.py b/core/client.py index 31eeacc..ef45af0 100644 --- a/core/client.py +++ b/core/client.py @@ -23,11 +23,22 @@ class BackendClient: def process_message(self, user_input: str) -> Dict: return self._server.process_message(user_input) - def update_config(self, api_key: str, base_url: str = "https://api.deepseek.com", model: str = "deepseek-chat") -> Dict: + def get_settings(self) -> Dict: packet = Packet( id=self._next_id(), - type=PacketType.SET_CONFIG, - body={"api_key": api_key, "base_url": base_url, "model": model} + type=PacketType.GET_SETTINGS, + body={} + ) + return self._server.send(packet).body + + def update_settings(self, api_config: Dict = None, tool_limits: Dict = None) -> Dict: + packet = Packet( + id=self._next_id(), + type=PacketType.SET_SETTINGS, + body={ + "api_config": api_config or {}, + "tool_limits": tool_limits or {} + } ) return self._server.send(packet).body @@ -47,30 +58,6 @@ class BackendClient: ) return self._server.send(packet).body - def get_config(self) -> Dict: - packet = Packet( - id=self._next_id(), - type=PacketType.GET_CONFIG, - body={} - ) - return self._server.send(packet).body - - def get_tool_limits(self) -> Dict: - packet = Packet( - id=self._next_id(), - type=PacketType.GET_TOOL_LIMITS, - body={} - ) - return self._server.send(packet).body - - def update_tool_limits(self, **kwargs) -> Dict: - packet = Packet( - id=self._next_id(), - type=PacketType.SET_TOOL_LIMITS, - body=kwargs - ) - return self._server.send(packet).body - def save_history(self, messages: list) -> None: packet = Packet( id=self._next_id(), @@ -88,4 +75,4 @@ class BackendClient: return self._server.send(packet).body.get("history", []) def shutdown(self) -> None: - self._server.shutdown() \ No newline at end of file + self._server.shutdown() diff --git a/tests/test_core/test_packet.py b/tests/test_core/test_packet.py index f29c940..c00cdac 100644 --- a/tests/test_core/test_packet.py +++ b/tests/test_core/test_packet.py @@ -26,15 +26,15 @@ class TestPacketTypeEnum: assert PacketType.GET_STATUS is not None assert PacketType.GET_STATUS.value == "get_status" - def test_packet_type_get_config_exists(self): + def test_packet_type_get_settings_exists(self): from core import PacketType - assert PacketType.GET_CONFIG is not None - assert PacketType.GET_CONFIG.value == "get_config" + assert PacketType.GET_SETTINGS is not None + assert PacketType.GET_SETTINGS.value == "get_settings" - def test_packet_type_set_config_exists(self): + def test_packet_type_set_settings_exists(self): from core import PacketType - assert PacketType.SET_CONFIG is not None - assert PacketType.SET_CONFIG.value == "set_config" + assert PacketType.SET_SETTINGS is not None + assert PacketType.SET_SETTINGS.value == "set_settings" def test_packet_type_get_history_exists(self): from core import PacketType @@ -57,14 +57,12 @@ class TestPacketTypeEnum: assert "process_message" in values assert "execute_tool" in values assert "get_status" in values - assert "get_config" in values - assert "set_config" in values - assert "get_tool_limits" in values - assert "set_tool_limits" in values + assert "get_settings" in values + assert "set_settings" in values assert "get_history" in values assert "save_history" in values assert "shutdown" in values - assert len(values) == 10 + assert len(values) == 8 class TestPacketCreation: @@ -90,7 +88,7 @@ class TestPacketCreation: def test_packet_created_at_default(self): from core import Packet, PacketType before = time.time() - packet = Packet(id="test-4", type=PacketType.GET_CONFIG, body={}) + packet = Packet(id="test-4", type=PacketType.GET_SETTINGS, body={}) after = time.time() assert before <= packet.created_at <= after @@ -186,26 +184,30 @@ class TestBackendClientAPI: server.shutdown() - def test_update_config(self): + def test_update_settings(self): from core import BackendServer, BackendClient server = BackendServer(db_path=":memory:", use_embedded_db=True) server.start(api_key="") client = BackendClient(server) - result = client.update_config(api_key="new-key", base_url="https://api.deepseek.com") + result = client.update_settings( + api_config={"api_key": "new-key", "base_url": "https://api.deepseek.com", "model": "deepseek-chat"}, + tool_limits={"persona_query_max": 2} + ) assert result.get("success") is True server.shutdown() - def test_get_config(self): + def test_get_settings(self): from core import BackendServer, BackendClient server = BackendServer(db_path=":memory:", use_embedded_db=True) server.start(api_key="test-key") client = BackendClient(server) - result = client.get_config() + result = client.get_settings() assert result.get("success") is True - assert result.get("data", {}).get("api_key") == "test-key" + data = result.get("data", {}) + assert data.get("api_config", {}).get("api_key") == "test-key" server.shutdown()