Skip to content

Commit ddee3f9

Browse files
committed
Convert error type assertions to errors.As(...)
This is best practice, unless the exact type is really required. Signed-off-by: Tom Wieczorek <[email protected]>
1 parent 8eedd58 commit ddee3f9

File tree

5 files changed

+20
-10
lines changed

5 files changed

+20
-10
lines changed

internal/pkg/sysinfo/probes/linux/cgroups.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ limitations under the License.
1919
package linux
2020

2121
import (
22+
"errors"
2223
"fmt"
2324
"os"
2425
"sync"
@@ -80,8 +81,9 @@ func (c *CgroupsProbes) probe(reporter probes.Reporter) error {
8081
}
8182

8283
func reportCgroupSystemErr(reporter probes.Reporter, d probes.ProbeDesc, err error) error {
83-
if detectionFailed, ok := err.(cgroupFsDetectionFailed); ok {
84-
return reporter.Reject(d, detectionFailed, "")
84+
var detectionFailedErr cgroupFsDetectionFailed
85+
if errors.As(err, &detectionFailedErr) {
86+
return reporter.Reject(d, detectionFailedErr, "")
8587
}
8688

8789
return reporter.Error(d, err)

internal/pkg/sysinfo/probes/linux/kernel.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,8 +206,9 @@ func (k *kConfigProbe) DisplayName() string {
206206
func (k *kConfigProbe) Probe(reporter probes.Reporter) error {
207207
option, err := k.probeConfig(k.kConfig)
208208
if err != nil {
209-
if err, notFound := err.(*noKConfigsFound); notFound {
210-
return reporter.Warn(k, err, "")
209+
var notFoundErr *noKConfigsFound
210+
if errors.As(err, &notFoundErr) {
211+
return reporter.Warn(k, notFoundErr, "")
211212
}
212213
return reporter.Error(k, err)
213214
}

internal/pkg/sysinfo/probes/linux/kernel_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,9 @@ func TestKConfigProber(t *testing.T) {
117117

118118
option, err := probeKConfig(ensureKConfig("I_CERTAINLY_DONT_EXIST"))
119119
assert.Equal(t, option, kConfigUnknown)
120-
if _, ok := err.(*noKConfigsFound); ok {
121-
t.Log("system doesn't expose its kernel config")
120+
var notFoundErr *noKConfigsFound
121+
if errors.As(err, &notFoundErr) {
122+
t.Logf("System doesn't seem to expose its kernel config: %v", err)
122123
} else {
123124
assert.NoError(t, err)
124125
}

internal/pkg/sysinfo/probes/memory.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@ limitations under the License.
1616

1717
package probes
1818

19-
import "fmt"
19+
import (
20+
"errors"
21+
"fmt"
22+
)
2023

2124
// AssertTotalMemory asserts a minimum amount of system RAM.
2225
func AssertTotalMemory(parent ParentProbe, min uint64) {
@@ -39,7 +42,8 @@ type assertTotalMem struct {
3942
func (a *assertTotalMem) Probe(reporter Reporter) error {
4043
desc := NewProbeDesc("Total memory", a.path)
4144
if totalMemory, err := a.probeTotalMemory(); err != nil {
42-
if unsupportedErr, unsupported := err.(probeUnsupported); unsupported {
45+
var unsupportedErr probeUnsupported
46+
if errors.As(err, &unsupportedErr) {
4347
return reporter.Warn(desc, unsupportedErr, "")
4448
}
4549
return reporter.Error(desc, err)

pkg/kubernetes/watch/watcher.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package watch
1818

1919
import (
2020
"context"
21+
"errors"
2122
"fmt"
2223
"reflect"
2324
"time"
@@ -393,9 +394,10 @@ func retry(ctx context.Context, errorCallback ErrorCallback, runWatch func(conte
393394
return nil
394395
}
395396

396-
if err, ok := err.(conditionError); ok {
397+
var condErr conditionError
398+
if errors.As(err, &condErr) {
397399
// The user-specified condition returned an error.
398-
return err.error
400+
return condErr.error
399401
}
400402

401403
if ctx.Err() != nil {

0 commit comments

Comments
 (0)