2024-02-07 15:23:01 +01:00

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)
}