File tree Expand file tree Collapse file tree 2 files changed +16
-5
lines changed
Expand file tree Collapse file tree 2 files changed +16
-5
lines changed Original file line number Diff line number Diff line change @@ -66,10 +66,16 @@ func (h Osxkeychain) Delete(serverURL string) error {
6666 }
6767 defer freeServer (s )
6868
69- errMsg := C .keychain_delete (s )
70- if errMsg != nil {
69+ if errMsg := C .keychain_delete (s ); errMsg != nil {
7170 defer C .free (unsafe .Pointer (errMsg ))
72- return errors .New (C .GoString (errMsg ))
71+ switch goMsg := C .GoString (errMsg ); goMsg {
72+ case errCredentialsNotFound :
73+ return credentials .NewErrCredentialsNotFound ()
74+ case errInteractionNotAllowed :
75+ return ErrInteractionNotAllowed
76+ default :
77+ return errors .New (goMsg )
78+ }
7379 }
7480
7581 return nil
Original file line number Diff line number Diff line change @@ -205,9 +205,14 @@ func TestOSXKeychainHelperStoreRetrieve(t *testing.T) {
205205}
206206
207207func TestMissingCredentials (t * testing.T ) {
208+ const nonExistingCred = "https://adsfasdf.invalid/asdfsdddd"
208209 helper := Osxkeychain {}
209- _ , _ , err := helper .Get ("https://adsfasdf.wrewerwer.com/asdfsdddd" )
210+ _ , _ , err := helper .Get (nonExistingCred )
210211 if ! credentials .IsErrCredentialsNotFound (err ) {
211- t .Fatalf ("expected ErrCredentialsNotFound, got %v" , err )
212+ t .Errorf ("expected ErrCredentialsNotFound, got %v" , err )
213+ }
214+ err = helper .Delete (nonExistingCred )
215+ if ! credentials .IsErrCredentialsNotFound (err ) {
216+ t .Errorf ("expected ErrCredentialsNotFound, got %v" , err )
212217 }
213218}
You can’t perform that action at this time.
0 commit comments