Add tests for HasBeenPwned function

Introduced unit tests for the HasBeenPwned function in the hibp_test.go file. These tests consist of scenarios with both secured and compromised passwords, improving the function's reliability and error handling capabilities.
This commit is contained in:
Winni Neessen 2024-03-12 19:09:51 +01:00
parent 87f93ddbc6
commit c5caab0066
Signed by: wneessen
GPG key ID: 5F3AF39B820C119D

27
hibp_test.go Normal file
View file

@ -0,0 +1,27 @@
package apg
import (
"testing"
)
func TestHasBeenPwned(t *testing.T) {
tests := []struct {
name string
password string
want bool
}{
{"Pwned PW", "Test123", true},
{"Secure PW", "Cta8mWYmW7O*j1V!YMTS", false},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
got, err := HasBeenPwned(tt.password)
if err != nil {
t.Errorf("HasBeenPwned() failed: %s", err)
}
if tt.want != got {
t.Errorf("HasBeenPwned() failed, wanted: %t, got: %t", tt.want, got)
}
})
}
}