|
|
|
|
@ -2,6 +2,7 @@ package logging
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"bytes"
|
|
|
|
|
"context"
|
|
|
|
|
"log/slog"
|
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
|
|
@ -63,3 +64,24 @@ func TestInitLogging(t *testing.T) {
|
|
|
|
|
assert.StringContains(t, content, msg)
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestLoggerFromCtx(t *testing.T) {
|
|
|
|
|
defaultLogger := slog.Default()
|
|
|
|
|
subLogger := defaultLogger.With("testLogger", "this is a test")
|
|
|
|
|
|
|
|
|
|
t.Run("test logger returned is default", func(t *testing.T) {
|
|
|
|
|
assert.Equal(t, LoggerFromCtx(context.TODO()), defaultLogger)
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
t.Run("test logger returns saved logger", func(t *testing.T) {
|
|
|
|
|
assert.Equal(t, LoggerFromCtx(context.WithValue(context.TODO(), CtxKeyLogger, subLogger)), subLogger)
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
t.Run("test default logger when nil", func(t *testing.T) {
|
|
|
|
|
assert.Equal(t, LoggerFromCtx(context.WithValue(context.TODO(), CtxKeyLogger, nil)), defaultLogger)
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
t.Run("test default logger when wrong type", func(t *testing.T) {
|
|
|
|
|
assert.Equal(t, LoggerFromCtx(context.WithValue(context.TODO(), CtxKeyLogger, "bad type")), defaultLogger)
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
|