MCPcopy Index your code
hub / github.com/cli/cli / TestParseAgentName

Function TestParseAgentName

internal/agents/detect_test.go:17–48  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

15}
16
17func TestParseAgentName(t *testing.T) {
18 tests := []struct {
19 name string
20 input string
21 want AgentName
22 wantErr bool
23 }{
24 {name: "valid lowercase", input: "my-agent", want: "my-agent"},
25 {name: "valid with underscore", input: "my_agent_v2", want: "my_agent_v2"},
26 {name: "valid uppercase", input: "MyAgent", want: "MyAgent"},
27 {name: "valid numbers", input: "agent123", want: "agent123"},
28 {name: "spaces rejected", input: "my agent", wantErr: true},
29 {name: "newline rejected", input: "my\nagent", wantErr: true},
30 {name: "carriage return rejected", input: "my\ragent", wantErr: true},
31 {name: "null byte rejected", input: "my\x00agent", wantErr: true},
32 {name: "dot rejected", input: "my.agent", wantErr: true},
33 {name: "slash rejected", input: "my/agent", wantErr: true},
34 {name: "empty rejected", input: "", wantErr: true},
35 }
36
37 for _, tt := range tests {
38 t.Run(tt.name, func(t *testing.T) {
39 got, err := parseAgentName(tt.input)
40 if tt.wantErr {
41 require.Error(t, err)
42 } else {
43 require.NoError(t, err)
44 assert.Equal(t, tt.want, got)
45 }
46 })
47 }
48}
49
50func TestDetectWith(t *testing.T) {
51 tests := []struct {

Callers

nothing calls this directly

Calls 4

parseAgentNameFunction · 0.85
EqualMethod · 0.80
RunMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected