package boltdb import "testing" func TestValidatePasteKey(t *testing.T) { tests := []struct { key string wantErr bool errKind error }{ {"xd42__", false, nil}, {"xd42_*", true, ErrKeyInvalidChar}, {"xd42_/", true, ErrKeyInvalidChar}, {"xd42_=", true, ErrKeyInvalidChar}, {"xd42_", true, ErrKeyInvalidLength}, {"xd42", true, ErrKeyInvalidLength}, {"xd4", true, ErrKeyInvalidLength}, {"xd", true, ErrKeyInvalidLength}, {"x", true, ErrKeyInvalidLength}, {"", true, ErrKeyInvalidLength}, {"KoJ5", false, nil}, {"__dGSJIIbBpr-SD0", false, nil}, {"__dGSJIIbBpr-SD", true, ErrKeyInvalidLength}, } for _, tt := range tests { t.Run(tt.key, func(t *testing.T) { err := ValidatePasteKey(tt.key) if (err != nil) != tt.wantErr { t.Errorf("ValidatePasteKey() got error = %v, want error %v", err != nil, tt.wantErr) } if (err != nil) && err != tt.errKind { t.Errorf("ValidatePasteKey() error = %v, want errKind %v", err, tt.errKind) } }) } }