test(keyring): add tests
This commit is contained in:
parent
92382aabf5
commit
9e7cb05741
1 changed files with 109 additions and 0 deletions
109
internal/keyring/keyring_test.go
Normal file
109
internal/keyring/keyring_test.go
Normal file
|
|
@ -0,0 +1,109 @@
|
|||
package keyring
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"testing"
|
||||
|
||||
zkeyring "github.com/zalando/go-keyring"
|
||||
)
|
||||
|
||||
const testToken = "abc123"
|
||||
|
||||
var testErr = errors.New("boom")
|
||||
|
||||
func TestSetToken(t *testing.T) {
|
||||
t.Run("success", func(t *testing.T) {
|
||||
zkeyring.MockInit()
|
||||
|
||||
if err := SetToken(testToken); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
got, err := GetToken()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if got != testToken {
|
||||
t.Fatalf("got = %q, want = %q", got, testToken)
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("error", func(t *testing.T) {
|
||||
zkeyring.MockInitWithError(testErr)
|
||||
|
||||
if err := SetToken(testToken); err == nil {
|
||||
t.Fatal("expected error")
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
func TestGetToken(t *testing.T) {
|
||||
t.Run("success", func(t *testing.T) {
|
||||
zkeyring.MockInit()
|
||||
|
||||
if err := zkeyring.Set(keyringService, keyringUser, testToken); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
got, err := GetToken()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if got != testToken {
|
||||
t.Fatalf("got = %q, want = %q", got, testToken)
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("not found", func(t *testing.T) {
|
||||
zkeyring.MockInit()
|
||||
|
||||
_, err := GetToken()
|
||||
if !errors.Is(err, zkeyring.ErrNotFound) {
|
||||
t.Fatalf("got = %v, want = %v", err, zkeyring.ErrNotFound)
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("error", func(t *testing.T) {
|
||||
zkeyring.MockInitWithError(testErr)
|
||||
|
||||
if _, err := GetToken(); err == nil {
|
||||
t.Fatal("expected error")
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
func TestDeleteToken(t *testing.T) {
|
||||
t.Run("success", func(t *testing.T) {
|
||||
zkeyring.MockInit()
|
||||
|
||||
if err := zkeyring.Set(keyringService, keyringUser, testToken); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := DeleteToken(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
_, err := GetToken()
|
||||
if !errors.Is(err, zkeyring.ErrNotFound) {
|
||||
t.Fatalf("got = %v, want = %v", err, zkeyring.ErrNotFound)
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("not found", func(t *testing.T) {
|
||||
zkeyring.MockInit()
|
||||
|
||||
if err := DeleteToken(); !errors.Is(err, zkeyring.ErrNotFound) {
|
||||
t.Fatalf("got = %v, want = %v", err, zkeyring.ErrNotFound)
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("error", func(t *testing.T) {
|
||||
zkeyring.MockInitWithError(testErr)
|
||||
|
||||
if err := DeleteToken(); err == nil {
|
||||
t.Fatal("expected error")
|
||||
}
|
||||
})
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue