email-mcp/internal/secretstore/store_test.go
2026-04-10 09:54:38 +02:00

35 lines
777 B
Go

package secretstore
import "testing"
func TestCredentialValidateRequiresAllFields(t *testing.T) {
tests := []struct {
name string
cred Credential
}{
{
name: "missing host",
cred: Credential{Username: "alice", Password: "secret"},
},
{
name: "missing username",
cred: Credential{Host: "imap.example.com", Password: "secret"},
},
{
name: "missing password",
cred: Credential{Host: "imap.example.com", Username: "alice"},
},
{
name: "whitespace only fields",
cred: Credential{Host: " \t ", Username: "\n", Password: " "},
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if err := tt.cred.Validate(); err == nil {
t.Fatal("expected validation error when a required field is missing")
}
})
}
}