/ internal / skills / validate_test.go
validate_test.go
 1  package skills
 2  
 3  import "testing"
 4  
 5  func TestValidateSkillName(t *testing.T) {
 6  	tests := []struct {
 7  		name    string
 8  		wantErr bool
 9  	}{
10  		{"pdf", false},
11  		{"mcp-builder", false},
12  		{"a", false},
13  		{"a1", false},
14  		{"my-cool-skill", false},
15  		{"", true},
16  		{"PDF", true},
17  		{"my_skill", true},
18  		{"my--skill", true},
19  		{"-pdf", true},
20  		{"pdf-", true},
21  		{"a b", true},
22  		{"quit", true},
23  		{"help", true},
24  		{"search", true},
25  	}
26  	for _, tt := range tests {
27  		t.Run(tt.name, func(t *testing.T) {
28  			err := ValidateSkillName(tt.name)
29  			if (err != nil) != tt.wantErr {
30  				t.Errorf("ValidateSkillName(%q) error = %v, wantErr %v", tt.name, err, tt.wantErr)
31  			}
32  		})
33  	}
34  }