mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-04-26 17:26:23 +02:00
37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
from pathlib import Path
|
|
|
|
import pytest
|
|
|
|
from app.agents.new_chat.filesystem_backends import build_backend_resolver
|
|
from app.agents.new_chat.filesystem_selection import (
|
|
ClientPlatform,
|
|
FilesystemMode,
|
|
FilesystemSelection,
|
|
)
|
|
from app.agents.new_chat.middleware.local_folder_backend import LocalFolderBackend
|
|
|
|
pytestmark = pytest.mark.unit
|
|
|
|
|
|
class _RuntimeStub:
|
|
state = {"files": {}}
|
|
|
|
|
|
def test_backend_resolver_returns_local_backend_for_local_mode(tmp_path: Path):
|
|
selection = FilesystemSelection(
|
|
mode=FilesystemMode.DESKTOP_LOCAL_FOLDER,
|
|
client_platform=ClientPlatform.DESKTOP,
|
|
local_root_path=str(tmp_path),
|
|
)
|
|
resolver = build_backend_resolver(selection)
|
|
|
|
backend = resolver(_RuntimeStub())
|
|
assert isinstance(backend, LocalFolderBackend)
|
|
|
|
|
|
def test_backend_resolver_uses_cloud_mode_by_default():
|
|
resolver = build_backend_resolver(FilesystemSelection())
|
|
backend = resolver(_RuntimeStub())
|
|
# StateBackend class name check keeps this test decoupled
|
|
# from internal deepagents runtime class identity.
|
|
assert backend.__class__.__name__ == "StateBackend"
|