picoclaw/pkg
yinwm 0ac93d4429 feat: US-014 - Add WebTool tests
Added comprehensive test coverage for WebTool (WebSearchTool, WebFetchTool) with 9 test cases:
- TestWebTool_WebFetch_Success: Verifies successful URL fetching
- TestWebTool_WebFetch_JSON: Verifies JSON content handling
- TestWebTool_WebFetch_InvalidURL: Verifies error handling for invalid URLs
- TestWebTool_WebFetch_UnsupportedScheme: Verifies only http/https allowed
- TestWebTool_WebFetch_MissingURL: Verifies missing URL parameter handling
- TestWebTool_WebFetch_Truncation: Verifies content truncation at maxChars
- TestWebTool_WebSearch_NoApiKey: Verifies API key requirement
- TestWebTool_WebSearch_MissingQuery: Verifies missing query parameter
- TestWebTool_WebFetch_HTMLExtraction: Verifies HTML tag removal and text extraction
- TestWebTool_WebFetch_MissingDomain: Verifies domain validation

WebTool implementation already conforms to ToolResult specification:
- WebFetch returns ForUser=fetched content, ForLLM=summary with byte count
- WebSearch returns ForUser=search results, ForLLM=result count
- Errors return ErrorResult with IsError=true

Tests use httptest.NewServer for mock HTTP servers, avoiding external API dependencies.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 19:54:44 +08:00
..
agent feat: US-010 - Add RecordLastChannel to AgentLoop with atomic state save 2026-02-12 19:49:36 +08:00
auth feat(auth): add OAuth and token-based login for OpenAI and Anthropic 2026-02-11 11:41:13 -06:00
bus * First commit 2026-02-09 19:20:19 +08:00
channels refactor(channels): consolidate media handling and improve resource cleanup 2026-02-12 12:46:28 +08:00
config Merge branch 'main' into issue-31-feat-add-slack-channel-integration-with-socket-mode-threads-reactions-and-slash-commands 2026-02-12 11:59:05 +08:00
cron refactor(agent): improve code quality and restore summarization 2026-02-11 20:31:41 +08:00
heartbeat feat: US-007 - Add heartbeat async task execution support 2026-02-12 19:39:57 +08:00
logger * First commit 2026-02-09 19:20:19 +08:00
migrate feat(migrate): add picoclaw migrate command for OpenClaw workspace migration 2026-02-11 12:48:16 -06:00
providers chore(deps): upgrade openai-go from v1.12.0 to v3.21.0 2026-02-11 13:39:19 -06:00
session fix(cron): add one-time reminders and fix data paths to workspace 2026-02-11 20:31:41 +08:00
skills Add memory system, dynamic tool loading, and fix logging issues 2026-02-11 00:14:33 +08:00
state feat: US-009 - Add state save atomicity with SetLastChannel 2026-02-12 19:46:10 +08:00
tools feat: US-014 - Add WebTool tests 2026-02-12 19:54:44 +08:00
utils refactor(channels): consolidate media handling and improve resource cleanup 2026-02-12 12:46:28 +08:00
voice Remove duplicate truncate functions, reuse utils.Truncate 2026-02-12 00:46:48 +08:00