mirror of
https://github.com/qdm12/gluetun.git
synced 2026-05-06 20:10:11 +02:00
chore: do not use sentinel errors when unneeded
- main reason being it's a burden to always define sentinel errors at global scope, wrap them with `%w` instead of using a string directly - only use sentinel errors when it has to be checked using `errors.Is` - replace all usage of these sentinel errors in `fmt.Errorf` with direct strings that were in the sentinel error - exclude the sentinel error definition requirement from .golangci.yml - update unit tests to use ContainersError instead of ErrorIs so it stays as a "not a change detector test" without requiring a sentinel error
This commit is contained in:
@@ -6,7 +6,6 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/qdm12/gluetun/internal/httpserver"
|
||||
"github.com/qdm12/gosettings/validate"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
@@ -195,7 +194,6 @@ func Test_Settings_Validate(t *testing.T) {
|
||||
|
||||
testCases := map[string]struct {
|
||||
settings Settings
|
||||
errWrapped error
|
||||
errMessage string
|
||||
}{
|
||||
"negative block profile rate": {
|
||||
@@ -203,16 +201,14 @@ func Test_Settings_Validate(t *testing.T) {
|
||||
BlockProfileRate: intPtr(-1),
|
||||
MutexProfileRate: intPtr(0),
|
||||
},
|
||||
errWrapped: ErrBlockProfileRateNegative,
|
||||
errMessage: ErrBlockProfileRateNegative.Error(),
|
||||
errMessage: "block profile rate cannot be negative",
|
||||
},
|
||||
"negative mutex profile rate": {
|
||||
settings: Settings{
|
||||
BlockProfileRate: intPtr(0),
|
||||
MutexProfileRate: intPtr(-1),
|
||||
},
|
||||
errWrapped: ErrMutexProfileRateNegative,
|
||||
errMessage: ErrMutexProfileRateNegative.Error(),
|
||||
errMessage: "mutex profile rate cannot be negative",
|
||||
},
|
||||
"http server validation error": {
|
||||
settings: Settings{
|
||||
@@ -222,7 +218,6 @@ func Test_Settings_Validate(t *testing.T) {
|
||||
Address: ":x",
|
||||
},
|
||||
},
|
||||
errWrapped: validate.ErrPortNotAnInteger,
|
||||
errMessage: "port value is not an integer: x",
|
||||
},
|
||||
"valid settings": {
|
||||
@@ -247,9 +242,10 @@ func Test_Settings_Validate(t *testing.T) {
|
||||
|
||||
err := testCase.settings.Validate()
|
||||
|
||||
assert.ErrorIs(t, err, testCase.errWrapped)
|
||||
if testCase.errMessage != "" {
|
||||
assert.EqualError(t, err, testCase.errMessage)
|
||||
} else {
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user