78 lines
1.9 KiB
Go
78 lines
1.9 KiB
Go
//golangcitest:args -Ezerologlint
|
|
package zerologlint
|
|
|
|
import (
|
|
"fmt"
|
|
"slices"
|
|
|
|
"github.com/rs/zerolog"
|
|
"github.com/rs/zerolog/log"
|
|
)
|
|
|
|
func expectWarnings() {
|
|
log.Error() // want "must be dispatched by Msg or Send method"
|
|
log.Info() // want "must be dispatched by Msg or Send method"
|
|
log.Fatal() // want "must be dispatched by Msg or Send method"
|
|
log.Debug() // want "must be dispatched by Msg or Send method"
|
|
log.Warn() // want "must be dispatched by Msg or Send method"
|
|
|
|
err := fmt.Errorf("foobarerror")
|
|
log.Error().Err(err) // want "must be dispatched by Msg or Send method"
|
|
log.Error().Err(err).Str("foo", "bar").Int("foo", 1) // want "must be dispatched by Msg or Send method"
|
|
|
|
logger := log.Error() // want "must be dispatched by Msg or Send method"
|
|
logger.Err(err).Str("foo", "bar").Int("foo", 1)
|
|
|
|
// include zerolog.Dict()
|
|
log.Info(). // want "must be dispatched by Msg or Send method"
|
|
Str("foo", "bar").
|
|
Dict("dict", zerolog.Dict().
|
|
Str("bar", "baz").
|
|
Int("n", 1),
|
|
)
|
|
|
|
// conditional
|
|
logger2 := log.Info() // want "must be dispatched by Msg or Send method"
|
|
if err != nil {
|
|
logger2 = log.Error() // want "must be dispatched by Msg or Send method"
|
|
}
|
|
logger2.Str("foo", "bar")
|
|
}
|
|
|
|
func expectNoWarnings() {
|
|
log.Fatal().Send()
|
|
log.Panic().Msg("")
|
|
log.Debug().Send()
|
|
log.Info().Msg("")
|
|
log.Warn().Send()
|
|
log.Error().Msg("")
|
|
|
|
log.Error().Str("foo", "bar").Send()
|
|
err := fmt.Errorf("foobarerror")
|
|
log.Error().Err(err).Str("foo", "bar").Int("foo", 1).Msg("")
|
|
|
|
logger := log.Error()
|
|
logger.Send()
|
|
|
|
// include zerolog.Dict()
|
|
log.Info().
|
|
Str("foo", "bar").
|
|
Dict("dict", zerolog.Dict().
|
|
Str("bar", "baz").
|
|
Int("n", 1),
|
|
).Send()
|
|
|
|
// conditional
|
|
logger2 := log.Info()
|
|
if err != nil {
|
|
logger2 = log.Error()
|
|
}
|
|
logger2.Send()
|
|
}
|
|
|
|
// https://github.com/ykadowak/zerologlint/pull/2
|
|
func packageNil() {
|
|
s := []int{1, 2, 3}
|
|
slices.Sort(s)
|
|
}
|