Files
liqiang b119135836
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
2026-08-20 13:12:50 +00:00

23 lines
869 B
Python

from tool_manager import ToolLibrary
import tempfile
from pathlib import Path
def test_search_null_name_or_description():
with tempfile.TemporaryDirectory() as tmpdir:
lib = ToolLibrary(library_dir=Path(tmpdir))
# Create a tool file manually with null description
p = Path(tmpdir) / "null_desc.json"
p.write_text('{"name": "null_desc", "description": null, "parameters": {}, "code": "def run(): pass"}')
res = lib.search_tools("null")
assert res["success"] is True
assert res["count"] == 1
assert res["tools"][0]["name"] == "null_desc"
def test_get_tool_non_dict_json():
with tempfile.TemporaryDirectory() as tmpdir:
lib = ToolLibrary(library_dir=Path(tmpdir))
p = Path(tmpdir) / "bad_list.json"
p.write_text('[1, 2, 3]')
assert lib.get_tool("bad_list") is None