diff options
Diffstat (limited to 'assert/errequal.go')
| -rw-r--r-- | assert/errequal.go | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/assert/errequal.go b/assert/errequal.go index 4752f26..86cd719 100644 --- a/assert/errequal.go +++ b/assert/errequal.go @@ -21,7 +21,9 @@ func ErrEqual(t TestingTB, actual error, expected any) bool { // and also coerce all nil values of concrete `error` types into untyped nil if expectedErr, ok := expected.(error); ok { // convert nil values of concrete error types into a generic nil value - if reflect.ValueOf(expectedErr).IsNil() { + expectedValue := reflect.ValueOf(expectedErr) + kind := expectedValue.Kind() + if (kind == reflect.Pointer || kind == reflect.Interface) && expectedValue.IsNil() { expected = nil } else { expected = expectedErr |
