refactor(api_endpoints): improve sqlite_handler retrieval logic

- Updated the logic for retrieving the sqlite_handler in APIEndpoints to use a safer approach with getattr, ensuring compatibility with the daemon_instance.
- Adjusted test case to include an additional parameter in the sqlite.companion_push_message assertion for consistency.
This commit is contained in:
agessaman
2026-06-06 09:39:30 -07:00
parent dac60443f0
commit ea6e660f34
2 changed files with 15 additions and 5 deletions
+14 -4
View File
@@ -3551,8 +3551,13 @@ class APIEndpoints:
"settings": comp_settings,
}
sqlite_handler = None
if self.repeater_handler and self.repeater_handler.storage:
sqlite_handler = self.repeater_handler.storage.sqlite_handler
repeater_handler = (
getattr(self.daemon_instance, "repeater_handler", None)
if self.daemon_instance
else None
)
if repeater_handler and getattr(repeater_handler, "storage", None):
sqlite_handler = repeater_handler.storage.sqlite_handler
if sqlite_handler and identity_key:
try:
validate_companion_config_capacity(
@@ -3786,8 +3791,13 @@ class APIEndpoints:
return self._error(str(e))
sqlite_handler = None
if self.repeater_handler and self.repeater_handler.storage:
sqlite_handler = self.repeater_handler.storage.sqlite_handler
repeater_handler = (
getattr(self.daemon_instance, "repeater_handler", None)
if self.daemon_instance
else None
)
if repeater_handler and getattr(repeater_handler, "storage", None):
sqlite_handler = repeater_handler.storage.sqlite_handler
if sqlite_handler and identity.get("identity_key"):
try:
validate_companion_config_capacity(
+1 -1
View File
@@ -147,7 +147,7 @@ async def test_frame_server_persistence_paths_and_stop():
srv._build_message_frame = MagicMock(return_value=b"frame")
await srv._persist_companion_message({"text": "x"})
sqlite.companion_push_message.assert_called_once_with("h", {"text": "x"})
sqlite.companion_push_message.assert_called_once_with("h", {"text": "x"}, None)
bridge.message_queue.pop_last.assert_called_once()
msg = srv._sync_next_from_persistence()