feat(system):优化后端
1.新增后端测试 2.增加了后端的加密 3.增加了i18n(国际化)
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
"""``utils.get_tool`` 在真实仓库目录上的加载行为。"""
|
||||
|
||||
from kilostar.utils import get_tool
|
||||
from kilostar.utils.get_tool import (
|
||||
_get_tool_func,
|
||||
del_tool_cache,
|
||||
load_tools_from_list,
|
||||
)
|
||||
|
||||
|
||||
def setup_function(_func):
|
||||
"""每个测试前清空模块级缓存,避免相互影响。"""
|
||||
get_tool._tool_cache.clear()
|
||||
|
||||
|
||||
def test_load_existing_tool_via_load_tools_from_list():
|
||||
tools = load_tools_from_list(["file_reader"])
|
||||
assert len(tools) == 1
|
||||
assert tools[0].__name__ == "file_reader"
|
||||
|
||||
|
||||
def test_loader_caches_function():
|
||||
f1 = _get_tool_func("file_reader")
|
||||
f2 = _get_tool_func("file_reader")
|
||||
assert f1 is f2
|
||||
assert "file_reader" in get_tool._tool_cache
|
||||
|
||||
|
||||
def test_del_tool_cache_removes_entry():
|
||||
_get_tool_func("file_reader")
|
||||
assert "file_reader" in get_tool._tool_cache
|
||||
del_tool_cache("file_reader")
|
||||
assert "file_reader" not in get_tool._tool_cache
|
||||
|
||||
|
||||
def test_load_unknown_tool_returns_none_and_keeps_others():
|
||||
tools = load_tools_from_list(["file_reader", "definitely_not_exist"])
|
||||
assert len(tools) == 1
|
||||
assert tools[0].__name__ == "file_reader"
|
||||
|
||||
|
||||
def test_load_tools_from_list_handles_none_and_empty():
|
||||
assert load_tools_from_list(None) == []
|
||||
assert load_tools_from_list([]) == []
|
||||
Reference in New Issue
Block a user