Skip to content

Commit 8282d33

Browse files
committed
osxkeychain: use t.Cleanup(), and don't ignore errors
Make sure we don't drop errors when cleaning up state before/after tests. Signed-off-by: Sebastiaan van Stijn <[email protected]>
1 parent a7ff1c7 commit 8282d33

File tree

1 file changed

+30
-14
lines changed

1 file changed

+30
-14
lines changed

osxkeychain/osxkeychain_darwin_test.go

Lines changed: 30 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -82,15 +82,19 @@ func TestOSXKeychainHelperRetrieveAliases(t *testing.T) {
8282
}
8383

8484
helper := Osxkeychain{}
85-
defer func() {
85+
t.Cleanup(func() {
8686
for _, tc := range tests {
87-
helper.Delete(tc.storeURL)
87+
if err := helper.Delete(tc.storeURL); err != nil && !credentials.IsErrCredentialsNotFound(err) {
88+
t.Errorf("cleanup: failed to delete '%s': %v", tc.storeURL, err)
89+
}
8890
}
89-
}()
91+
})
9092

9193
// Clean store before testing.
9294
for _, tc := range tests {
93-
helper.Delete(tc.storeURL)
95+
if err := helper.Delete(tc.storeURL); err != nil && !credentials.IsErrCredentialsNotFound(err) {
96+
t.Errorf("prepare: failed to delete '%s': %v", tc.storeURL, err)
97+
}
9498
}
9599

96100
for _, tc := range tests {
@@ -102,7 +106,9 @@ func TestOSXKeychainHelperRetrieveAliases(t *testing.T) {
102106
if _, _, err := helper.Get(tc.readURL); err != nil {
103107
t.Errorf("Error: failed to read secret for URL %q using %q", tc.storeURL, tc.readURL)
104108
}
105-
helper.Delete(tc.storeURL)
109+
if err := helper.Delete(tc.storeURL); err != nil {
110+
t.Error(err)
111+
}
106112
}
107113
}
108114

@@ -149,15 +155,19 @@ func TestOSXKeychainHelperRetrieveStrict(t *testing.T) {
149155
}
150156

151157
helper := Osxkeychain{}
152-
defer func() {
158+
t.Cleanup(func() {
153159
for _, tc := range tests {
154-
helper.Delete(tc.storeURL)
160+
if err := helper.Delete(tc.storeURL); err != nil && !credentials.IsErrCredentialsNotFound(err) {
161+
t.Errorf("cleanup: failed to delete '%s': %v", tc.storeURL, err)
162+
}
155163
}
156-
}()
164+
})
157165

158166
// Clean store before testing.
159167
for _, tc := range tests {
160-
helper.Delete(tc.storeURL)
168+
if err := helper.Delete(tc.storeURL); err != nil && !credentials.IsErrCredentialsNotFound(err) {
169+
t.Errorf("prepare: failed to delete '%s': %v", tc.storeURL, err)
170+
}
161171
}
162172

163173
for _, tc := range tests {
@@ -169,7 +179,9 @@ func TestOSXKeychainHelperRetrieveStrict(t *testing.T) {
169179
if _, _, err := helper.Get(tc.readURL); err == nil {
170180
t.Errorf("Error: managed to read secret for URL %q using %q, but should not be able to", tc.storeURL, tc.readURL)
171181
}
172-
helper.Delete(tc.storeURL)
182+
if err := helper.Delete(tc.storeURL); err != nil {
183+
t.Error(err)
184+
}
173185
}
174186
}
175187

@@ -190,15 +202,19 @@ func TestOSXKeychainHelperStoreRetrieve(t *testing.T) {
190202
}
191203

192204
helper := Osxkeychain{}
193-
defer func() {
205+
t.Cleanup(func() {
194206
for _, tc := range tests {
195-
helper.Delete(tc.url)
207+
if err := helper.Delete(tc.url); err != nil && !credentials.IsErrCredentialsNotFound(err) {
208+
t.Errorf("cleanup: failed to delete '%s': %v", tc.url, err)
209+
}
196210
}
197-
}()
211+
})
198212

199213
// Clean store before testing.
200214
for _, tc := range tests {
201-
helper.Delete(tc.url)
215+
if err := helper.Delete(tc.url); err != nil && !credentials.IsErrCredentialsNotFound(err) {
216+
t.Errorf("prepare: failed to delete '%s': %v", tc.url, err)
217+
}
202218
}
203219

204220
// Note that we don't delete between individual tests here, to verify that

0 commit comments

Comments
 (0)