MCPcopy Create free account
hub / github.com/github/gh-aw / TestParseGitHubToolsets

Function TestParseGitHubToolsets

pkg/workflow/github_toolsets_test.go:46–153  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

44}
45
46func TestParseGitHubToolsets(t *testing.T) {
47 toolsetPermissionsMap := getToolsetPermissionsMap()
48
49 tests := []struct {
50 name string
51 input string
52 expected []string
53 }{
54 {
55 name: "Empty string returns default",
56 input: "",
57 expected: []string{"context", "repos", "issues", "pull_requests"},
58 },
59 {
60 name: "Default expands to default toolsets",
61 input: "default",
62 expected: []string{"context", "repos", "issues", "pull_requests"},
63 },
64 {
65 name: "Specific toolsets",
66 input: "repos,issues",
67 expected: []string{"repos", "issues"},
68 },
69 {
70 name: "Default plus additional",
71 input: "default,discussions",
72 expected: []string{"context", "repos", "issues", "pull_requests", "discussions"},
73 },
74 {
75 name: "All expands to all toolsets except excluded ones",
76 input: "all",
77 // Should include all toolsets except those in GitHubToolsetsExcludedFromAll (e.g., dependabot)
78 expected: nil,
79 },
80 {
81 name: "Deduplication",
82 input: "repos,issues,repos",
83 expected: []string{"repos", "issues"},
84 },
85 {
86 name: "Whitespace handling",
87 input: " repos , issues , pull_requests ",
88 expected: []string{"repos", "issues", "pull_requests"},
89 },
90 {
91 name: "Single toolset",
92 input: "actions",
93 expected: []string{"actions"},
94 },
95 {
96 name: "Multiple with default in middle",
97 input: "actions,default,discussions",
98 expected: []string{"actions", "context", "repos", "issues", "pull_requests", "discussions"},
99 },
100 {
101 name: "Action-friendly expands to action-friendly toolsets",
102 input: "action-friendly",
103 expected: []string{"context", "repos", "issues", "pull_requests"},

Callers

nothing calls this directly

Calls 3

ParseGitHubToolsetsFunction · 0.85
RunMethod · 0.45
ErrorfMethod · 0.45

Tested by

no test coverage detected