package project import ( "testing" "github.com/stretchr/testify/assert" ) func TestValidProjectID(t *testing.T) { tests := []struct { input string valid bool }{ {"valid-proj-id", true}, {"-valid-proj-id", false}, {"valid-proj-id-", false}, {"vvvvvvvvvalid-proj-id-max-len", true}, {"1valid-proj-id", false}, {"valid-proj!-id", false}, {"toooooooooolonggggggggggggggggggg", false}, } for _, tc := range tests { var validationErr *IDValidationError err := IsValidProjectID(tc.input) if tc.valid { assert.NoError(t, err) } else { assert.ErrorAs(t, err, &validationErr) } } }