Skip to content

Commit c1976a6

Browse files
authored
Merge pull request #18617 from redwrasse/redwrasse/server/remaining-errors-is
server: remaining errors.Is conversions
2 parents 951fc96 + 0739142 commit c1976a6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+142
-105
lines changed

server/auth/jwt_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ package auth
1616

1717
import (
1818
"context"
19+
"errors"
1920
"fmt"
2021
"testing"
2122
"time"
@@ -139,7 +140,7 @@ func testJWTInfo(t *testing.T, opts map[string]string) {
139140
}
140141

141142
_, aerr := verify.assign(ctx, "abc", 123)
142-
if aerr != ErrVerifyOnly {
143+
if !errors.Is(aerr, ErrVerifyOnly) {
143144
t.Fatalf("unexpected error when attempting to sign with public key: %v", aerr)
144145
}
145146

server/auth/store_test.go

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -165,13 +165,13 @@ func TestUserAdd(t *testing.T) {
165165
if err == nil {
166166
t.Fatalf("expected %v, got %v", ErrUserAlreadyExist, err)
167167
}
168-
if err != ErrUserAlreadyExist {
168+
if !errors.Is(err, ErrUserAlreadyExist) {
169169
t.Fatalf("expected %v, got %v", ErrUserAlreadyExist, err)
170170
}
171171

172172
ua = &pb.AuthUserAddRequest{Name: "", Options: &authpb.UserAddOptions{NoPassword: false}}
173173
_, err = as.UserAdd(ua) // add a user with empty name
174-
if err != ErrUserEmpty {
174+
if !errors.Is(err, ErrUserEmpty) {
175175
t.Fatal(err)
176176
}
177177

@@ -227,7 +227,7 @@ func TestCheckPassword(t *testing.T) {
227227
if err == nil {
228228
t.Fatalf("expected %v, got %v", ErrAuthFailed, err)
229229
}
230-
if err != ErrAuthFailed {
230+
if !errors.Is(err, ErrAuthFailed) {
231231
t.Fatalf("expected %v, got %v", ErrAuthFailed, err)
232232
}
233233

@@ -242,7 +242,7 @@ func TestCheckPassword(t *testing.T) {
242242
if err == nil {
243243
t.Fatalf("expected %v, got %v", ErrAuthFailed, err)
244244
}
245-
if err != ErrAuthFailed {
245+
if !errors.Is(err, ErrAuthFailed) {
246246
t.Fatalf("expected %v, got %v", ErrAuthFailed, err)
247247
}
248248
}
@@ -264,7 +264,7 @@ func TestUserDelete(t *testing.T) {
264264
if err == nil {
265265
t.Fatalf("expected %v, got %v", ErrUserNotFound, err)
266266
}
267-
if err != ErrUserNotFound {
267+
if !errors.Is(err, ErrUserNotFound) {
268268
t.Fatalf("expected %v, got %v", ErrUserNotFound, err)
269269
}
270270

@@ -288,7 +288,7 @@ func TestUserDeleteAndPermCache(t *testing.T) {
288288

289289
// delete a non-existing user
290290
_, err = as.UserDelete(ud)
291-
if err != ErrUserNotFound {
291+
if !errors.Is(err, ErrUserNotFound) {
292292
t.Fatalf("expected %v, got %v", ErrUserNotFound, err)
293293
}
294294

@@ -336,7 +336,7 @@ func TestUserChangePassword(t *testing.T) {
336336
if err == nil {
337337
t.Fatalf("expected %v, got %v", ErrUserNotFound, err)
338338
}
339-
if err != ErrUserNotFound {
339+
if !errors.Is(err, ErrUserNotFound) {
340340
t.Fatalf("expected %v, got %v", ErrUserNotFound, err)
341341
}
342342

@@ -359,7 +359,7 @@ func TestRoleAdd(t *testing.T) {
359359

360360
// add a role with empty name
361361
_, err = as.RoleAdd(&pb.AuthRoleAddRequest{Name: ""})
362-
if err != ErrRoleEmpty {
362+
if !errors.Is(err, ErrRoleEmpty) {
363363
t.Fatal(err)
364364
}
365365
}
@@ -379,7 +379,7 @@ func TestUserGrant(t *testing.T) {
379379
if err == nil {
380380
t.Errorf("expected %v, got %v", ErrUserNotFound, err)
381381
}
382-
if err != ErrUserNotFound {
382+
if !errors.Is(err, ErrUserNotFound) {
383383
t.Errorf("expected %v, got %v", ErrUserNotFound, err)
384384
}
385385
}
@@ -455,7 +455,7 @@ func TestIsOpPermitted(t *testing.T) {
455455
as.rangePermCacheMu.Lock()
456456
delete(as.rangePermCache, "foo")
457457
as.rangePermCacheMu.Unlock()
458-
if err := as.isOpPermitted("foo", as.Revision(), perm.Key, perm.RangeEnd, perm.PermType); err != ErrPermissionDenied {
458+
if err := as.isOpPermitted("foo", as.Revision(), perm.Key, perm.RangeEnd, perm.PermType); !errors.Is(err, ErrPermissionDenied) {
459459
t.Fatal(err)
460460
}
461461

@@ -545,7 +545,7 @@ func TestRoleGrantPermission(t *testing.T) {
545545
Name: "role-test-1",
546546
})
547547

548-
if err != ErrPermissionNotGiven {
548+
if !errors.Is(err, ErrPermissionNotGiven) {
549549
t.Error(err)
550550
}
551551

@@ -887,13 +887,13 @@ func TestAuthInfoFromCtx(t *testing.T) {
887887

888888
ctx = metadata.NewIncomingContext(context.Background(), metadata.New(map[string]string{rpctypes.TokenFieldNameGRPC: "Invalid Token"}))
889889
_, err = as.AuthInfoFromCtx(ctx)
890-
if err != ErrInvalidAuthToken {
890+
if !errors.Is(err, ErrInvalidAuthToken) {
891891
t.Errorf("expected %v, got %v", ErrInvalidAuthToken, err)
892892
}
893893

894894
ctx = metadata.NewIncomingContext(context.Background(), metadata.New(map[string]string{rpctypes.TokenFieldNameGRPC: "Invalid.Token"}))
895895
_, err = as.AuthInfoFromCtx(ctx)
896-
if err != ErrInvalidAuthToken {
896+
if !errors.Is(err, ErrInvalidAuthToken) {
897897
t.Errorf("expected %v, got %v", ErrInvalidAuthToken, err)
898898
}
899899

@@ -914,14 +914,14 @@ func TestAuthDisable(t *testing.T) {
914914
as.AuthDisable()
915915
ctx := context.WithValue(context.WithValue(context.TODO(), AuthenticateParamIndex{}, uint64(2)), AuthenticateParamSimpleTokenPrefix{}, "dummy")
916916
_, err := as.Authenticate(ctx, "foo", "bar")
917-
if err != ErrAuthNotEnabled {
917+
if !errors.Is(err, ErrAuthNotEnabled) {
918918
t.Errorf("expected %v, got %v", ErrAuthNotEnabled, err)
919919
}
920920

921921
// Disabling disabled auth to make sure it can return safely if store is already disabled.
922922
as.AuthDisable()
923923
_, err = as.Authenticate(ctx, "foo", "bar")
924-
if err != ErrAuthNotEnabled {
924+
if !errors.Is(err, ErrAuthNotEnabled) {
925925
t.Errorf("expected %v, got %v", ErrAuthNotEnabled, err)
926926
}
927927
}
@@ -980,19 +980,19 @@ func TestIsAdminPermitted(t *testing.T) {
980980

981981
// invalid user
982982
err = as.IsAdminPermitted(&AuthInfo{Username: "rooti", Revision: 1})
983-
if err != ErrUserNotFound {
983+
if !errors.Is(err, ErrUserNotFound) {
984984
t.Errorf("expected %v, got %v", ErrUserNotFound, err)
985985
}
986986

987987
// empty user
988988
err = as.IsAdminPermitted(&AuthInfo{Username: "", Revision: 1})
989-
if err != ErrUserEmpty {
989+
if !errors.Is(err, ErrUserEmpty) {
990990
t.Errorf("expected %v, got %v", ErrUserEmpty, err)
991991
}
992992

993993
// non-admin user
994994
err = as.IsAdminPermitted(&AuthInfo{Username: "foo", Revision: 1})
995-
if err != ErrPermissionDenied {
995+
if !errors.Is(err, ErrPermissionDenied) {
996996
t.Errorf("expected %v, got %v", ErrPermissionDenied, err)
997997
}
998998

@@ -1013,13 +1013,13 @@ func TestRecoverFromSnapshot(t *testing.T) {
10131013
if err == nil {
10141014
t.Fatalf("expected %v, got %v", ErrUserAlreadyExist, err)
10151015
}
1016-
if err != ErrUserAlreadyExist {
1016+
if !errors.Is(err, ErrUserAlreadyExist) {
10171017
t.Fatalf("expected %v, got %v", ErrUserAlreadyExist, err)
10181018
}
10191019

10201020
ua = &pb.AuthUserAddRequest{Name: "", Options: &authpb.UserAddOptions{NoPassword: false}}
10211021
_, err = as.UserAdd(ua) // add a user with empty name
1022-
if err != ErrUserEmpty {
1022+
if !errors.Is(err, ErrUserEmpty) {
10231023
t.Fatal(err)
10241024
}
10251025

@@ -1195,7 +1195,7 @@ func TestUserNoPasswordAdd(t *testing.T) {
11951195

11961196
ctx := context.WithValue(context.WithValue(context.TODO(), AuthenticateParamIndex{}, uint64(1)), AuthenticateParamSimpleTokenPrefix{}, "dummy")
11971197
_, err = as.Authenticate(ctx, username, "")
1198-
if err != ErrAuthFailed {
1198+
if !errors.Is(err, ErrAuthFailed) {
11991199
t.Fatalf("expected %v, got %v", ErrAuthFailed, err)
12001200
}
12011201
}
@@ -1237,7 +1237,7 @@ func TestUserChangePasswordWithOldLog(t *testing.T) {
12371237
if err == nil {
12381238
t.Fatalf("expected %v, got %v", ErrUserNotFound, err)
12391239
}
1240-
if err != ErrUserNotFound {
1240+
if !errors.Is(err, ErrUserNotFound) {
12411241
t.Fatalf("expected %v, got %v", ErrUserNotFound, err)
12421242
}
12431243
}

server/embed/etcd_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
package embed
1616

1717
import (
18+
"errors"
1819
"net/url"
1920
"testing"
2021

@@ -32,7 +33,7 @@ func TestEmptyClientTLSInfo_createMetricsListener(t *testing.T) {
3233
Scheme: "https",
3334
Host: "localhost:8080",
3435
}
35-
if _, err := e.createMetricsListener(murl); err != ErrMissingClientTLSInfoForMetricsURL {
36+
if _, err := e.createMetricsListener(murl); !errors.Is(err, ErrMissingClientTLSInfoForMetricsURL) {
3637
t.Fatalf("expected error %v, got %v", ErrMissingClientTLSInfoForMetricsURL, err)
3738
}
3839
}

server/embed/serve_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
package embed
1616

1717
import (
18+
"errors"
1819
"fmt"
1920
"net/url"
2021
"os"
@@ -43,7 +44,7 @@ func TestStartEtcdWrongToken(t *testing.T) {
4344
cfg.Dir = tdir
4445
cfg.AuthToken = "wrong-token"
4546

46-
if _, err := StartEtcd(cfg); err != auth.ErrInvalidAuthOpts {
47+
if _, err := StartEtcd(cfg); !errors.Is(err, auth.ErrInvalidAuthOpts) {
4748
t.Fatalf("expected %v, got %v", auth.ErrInvalidAuthOpts, err)
4849
}
4950
}

server/etcdmain/config_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
package etcdmain
1616

1717
import (
18+
"errors"
1819
"flag"
1920
"fmt"
2021
"net/url"
@@ -224,7 +225,7 @@ func TestConfigParsingConflictClusteringFlags(t *testing.T) {
224225

225226
for i, tt := range conflictArgs {
226227
cfg := newConfig()
227-
if err := cfg.parse(tt); err != embed.ErrConflictBootstrapFlags {
228+
if err := cfg.parse(tt); !errors.Is(err, embed.ErrConflictBootstrapFlags) {
228229
t.Errorf("%d: err = %v, want %v", i, err, embed.ErrConflictBootstrapFlags)
229230
}
230231
}
@@ -267,7 +268,7 @@ func TestConfigFileConflictClusteringFlags(t *testing.T) {
267268
args := []string{fmt.Sprintf("--config-file=%s", tmpfile.Name())}
268269

269270
cfg := newConfig()
270-
if err := cfg.parse(args); err != embed.ErrConflictBootstrapFlags {
271+
if err := cfg.parse(args); !errors.Is(err, embed.ErrConflictBootstrapFlags) {
271272
t.Errorf("%d: err = %v, want %v", i, err, embed.ErrConflictBootstrapFlags)
272273
}
273274
}
@@ -310,7 +311,7 @@ func TestConfigParsingMissedAdvertiseClientURLsFlag(t *testing.T) {
310311

311312
for i, tt := range tests {
312313
cfg := newConfig()
313-
if err := cfg.parse(tt.args); err != tt.werr {
314+
if err := cfg.parse(tt.args); !errors.Is(err, tt.werr) {
314315
t.Errorf("%d: err = %v, want %v", i, err, tt.werr)
315316
}
316317
}

server/etcdserver/api/membership/cluster_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ package membership
1616

1717
import (
1818
"encoding/json"
19+
"errors"
1920
"fmt"
2021
"path"
2122
"reflect"
@@ -458,7 +459,7 @@ func TestClusterValidateConfigurationChangeV2(t *testing.T) {
458459
}
459460
for i, tt := range tests {
460461
err := cl.ValidateConfigurationChange(tt.cc)
461-
if err != tt.werr {
462+
if !errors.Is(err, tt.werr) {
462463
t.Errorf("#%d: validateConfigurationChange error = %v, want %v", i, err, tt.werr)
463464
}
464465
}

server/etcdserver/api/rafthttp/msg_codec_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ package rafthttp
1616

1717
import (
1818
"bytes"
19+
"errors"
1920
"reflect"
2021
"testing"
2122

@@ -77,13 +78,13 @@ func TestMessage(t *testing.T) {
7778
for i, tt := range tests {
7879
b := &bytes.Buffer{}
7980
enc := &messageEncoder{w: b}
80-
if err := enc.encode(&tt.msg); err != tt.encodeErr {
81+
if err := enc.encode(&tt.msg); !errors.Is(err, tt.encodeErr) {
8182
t.Errorf("#%d: encode message error expected %v, got %v", i, tt.encodeErr, err)
8283
continue
8384
}
8485
dec := &messageDecoder{r: b}
8586
m, err := dec.decode()
86-
if err != tt.decodeErr {
87+
if !errors.Is(err, tt.decodeErr) {
8788
t.Errorf("#%d: decode message error expected %v, got %v", i, tt.decodeErr, err)
8889
continue
8990
}

server/etcdserver/api/rafthttp/pipeline.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ func (p *pipeline) post(data []byte) (err error) {
165165
p.picker.unreachable(u)
166166
// errMemberRemoved is a critical error since a removed member should
167167
// always be stopped. So we use reportCriticalError to report it to errorc.
168-
if err == errMemberRemoved {
168+
if errors.Is(err, errMemberRemoved) {
169169
reportCriticalError(err, p.errorc)
170170
}
171171
return err

server/etcdserver/api/rafthttp/snapshot_sender.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ package rafthttp
1717
import (
1818
"bytes"
1919
"context"
20+
"errors"
2021
"io"
2122
"net/http"
2223
"time"
@@ -110,7 +111,7 @@ func (s *snapshotSender) send(merged snap.Message) {
110111

111112
// errMemberRemoved is a critical error since a removed member should
112113
// always be stopped. So we use reportCriticalError to report it to errorc.
113-
if err == errMemberRemoved {
114+
if errors.Is(err, errMemberRemoved) {
114115
reportCriticalError(err, s.errorc)
115116
}
116117

server/etcdserver/api/rafthttp/stream.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ package rafthttp
1616

1717
import (
1818
"context"
19+
"errors"
1920
"fmt"
2021
"io"
2122
"net/http"
@@ -403,7 +404,7 @@ func (cr *streamReader) run() {
403404
for {
404405
rc, err := cr.dial(t)
405406
if err != nil {
406-
if err != errUnsupportedStreamType {
407+
if !errors.Is(err, errUnsupportedStreamType) {
407408
cr.status.deactivate(failureType{source: t.String(), action: "dial"}, err.Error())
408409
}
409410
} else {
@@ -428,7 +429,7 @@ func (cr *streamReader) run() {
428429
}
429430
switch {
430431
// all data is read out
431-
case err == io.EOF:
432+
case errors.Is(err, io.EOF):
432433
// connection is closed by the remote
433434
case transport.IsClosedConnError(err):
434435
default:

0 commit comments

Comments
 (0)