From 5e93239aad34e7c0d2832fbd09370870dd01cc7d Mon Sep 17 00:00:00 2001 From: Qingyang Hu Date: Mon, 10 Mar 2025 15:37:33 -0400 Subject: [PATCH] use errors functions in bson package. --- bson/bson_test.go | 10 ++++++---- bson/registry_test.go | 3 ++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/bson/bson_test.go b/bson/bson_test.go index 4a3465e478..20a317c18f 100644 --- a/bson/bson_test.go +++ b/bson/bson_test.go @@ -9,6 +9,7 @@ package bson import ( "bytes" "encoding/json" + "errors" "fmt" "reflect" "strconv" @@ -456,13 +457,14 @@ func TestD_UnmarshalJSON(t *testing.T) { want := json.Unmarshal([]byte(tc.test), &a) var b D got := json.Unmarshal([]byte(tc.test), &b) - switch w := want.(type) { - case *json.UnmarshalTypeError: + w := new(json.UnmarshalTypeError) + if errors.As(want, &w) { w.Type = reflect.TypeOf(b) require.IsType(t, want, got) - g := got.(*json.UnmarshalTypeError) + g := new(json.UnmarshalTypeError) + assert.True(t, errors.As(got, &g)) assert.Equal(t, w, g) - default: + } else { assert.Equal(t, want, got) } }) diff --git a/bson/registry_test.go b/bson/registry_test.go index b3a94e6195..ea7b2b2ef7 100644 --- a/bson/registry_test.go +++ b/bson/registry_test.go @@ -369,7 +369,8 @@ func TestRegistry(t *testing.T) { t.Parallel() wanterr := tc.wanterr - if ene, ok := tc.wanterr.(errNoEncoder); ok { + var ene errNoEncoder + if errors.As(tc.wanterr, &ene) { wanterr = errNoDecoder(ene) }