package search import ( "slices" "testing" "github.com/mark3labs/mcp-go/mcp" ) func TestSearchToolsRequiredFields(t *testing.T) { tests := []struct { name string tool mcp.Tool required []string }{ { name: "search_users", tool: SearchUsersTool, required: []string{"keyword"}, }, { name: "search_org_teams", tool: SearOrgTeamsTool, required: []string{"org", "query"}, }, { name: "search_repos", tool: SearchReposTool, required: []string{"keyword"}, }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { for _, field := range tt.required { if !slices.Contains(tt.tool.InputSchema.Required, field) { t.Errorf("tool %s: expected %q to be required, got required=%v", tt.name, field, tt.tool.InputSchema.Required) } } }) } }