33 lines
943 B
Go
33 lines
943 B
Go
package tools
|
|
|
|
import "testing"
|
|
|
|
func TestParseToolSearchRequest(t *testing.T) {
|
|
req, err := parseToolSearchRequest(`{"query":" search docs ","toolCode":" mcp_server/search ","arguments":{"q":"hello"}}`)
|
|
if err != nil {
|
|
t.Fatalf("parseToolSearchRequest returned error: %v", err)
|
|
}
|
|
if req.Query != "search docs" {
|
|
t.Fatalf("unexpected query: %q", req.Query)
|
|
}
|
|
if req.ToolCode != "mcp_server/search" {
|
|
t.Fatalf("unexpected toolCode: %q", req.ToolCode)
|
|
}
|
|
if req.Arguments["q"] != "hello" {
|
|
t.Fatalf("unexpected arguments: %#v", req.Arguments)
|
|
}
|
|
}
|
|
|
|
func TestParseToolSearchRequestDefaultsArguments(t *testing.T) {
|
|
req, err := parseToolSearchRequest(`{"query":"list"}`)
|
|
if err != nil {
|
|
t.Fatalf("parseToolSearchRequest returned error: %v", err)
|
|
}
|
|
if req.Arguments == nil {
|
|
t.Fatalf("expected non-nil arguments map")
|
|
}
|
|
if len(req.Arguments) != 0 {
|
|
t.Fatalf("expected empty arguments map, got %#v", req.Arguments)
|
|
}
|
|
}
|