()
| 112 | } |
| 113 | |
| 114 | func baseEntries() []baseEntry { |
| 115 | entries := []baseEntry{ |
| 116 | {name: "default"}, |
| 117 | {name: "read-only", settings: settings{readOnly: true}}, |
| 118 | {name: "toolsets-repos", settings: settings{toolsets: "repos"}}, |
| 119 | {name: "toolsets-issues", settings: settings{toolsets: "issues"}}, |
| 120 | {name: "toolsets-context", settings: settings{toolsets: "context"}}, |
| 121 | {name: "toolsets-pull_requests", settings: settings{toolsets: "pull_requests"}}, |
| 122 | {name: "toolsets-repos,issues", settings: settings{toolsets: "repos,issues"}}, |
| 123 | {name: "toolsets-issues,context", settings: settings{toolsets: "issues,context"}}, |
| 124 | {name: "toolsets-all", settings: settings{toolsets: "all"}}, |
| 125 | {name: "tools-get_me", settings: settings{tools: "get_me"}}, |
| 126 | {name: "tools-get_me,list_issues", settings: settings{tools: "get_me,list_issues"}}, |
| 127 | {name: "toolsets-repos+read-only", settings: settings{toolsets: "repos", readOnly: true}}, |
| 128 | {name: "insiders", settings: settings{insiders: true}}, |
| 129 | {name: "insiders+read-only", settings: settings{insiders: true, readOnly: true}}, |
| 130 | // Combined entries: exercise multiple settings together so we catch |
| 131 | // regressions when several X-MCP-* headers (or CLI flags) are merged. |
| 132 | {name: "combined-toolsets+exclude+readonly", settings: settings{ |
| 133 | toolsets: "repos,issues", |
| 134 | excludeTools: "delete_file", |
| 135 | readOnly: true, |
| 136 | }}, |
| 137 | {name: "combined-insiders+toolsets+features", settings: settings{ |
| 138 | insiders: true, |
| 139 | toolsets: "repos", |
| 140 | features: firstFeatureFlag(), |
| 141 | }}, |
| 142 | } |
| 143 | |
| 144 | flags := append([]string(nil), github.AllowedFeatureFlags...) |
| 145 | sort.Strings(flags) |
| 146 | for _, f := range flags { |
| 147 | entries = append(entries, baseEntry{ |
| 148 | name: "feature-" + f, |
| 149 | settings: settings{features: f}, |
| 150 | }) |
| 151 | } |
| 152 | return entries |
| 153 | } |
| 154 | |
| 155 | func (s settings) toArgs() string { |
| 156 | var parts []string |
no test coverage detected