| 98 | } |
| 99 | |
| 100 | func TestLogHolder_InterfaceCompliance(t *testing.T) { |
| 101 | t.Run("implements LoggerSetterGetter interface", func(_ *testing.T) { |
| 102 | var _ LoggerSetterGetter = &LogHolder{} |
| 103 | }) |
| 104 | |
| 105 | t.Run("interface methods work correctly", func(t *testing.T) { |
| 106 | var holder LoggerSetterGetter = &LogHolder{} |
| 107 | |
| 108 | buf := &bytes.Buffer{} |
| 109 | handler := slog.NewTextHandler(buf, &slog.HandlerOptions{Level: slog.LevelDebug}) |
| 110 | |
| 111 | holder.SetLogger(handler) |
| 112 | logger := holder.Logger() |
| 113 | |
| 114 | assert.NotNil(t, logger) |
| 115 | assert.Equal(t, handler, logger.Handler()) |
| 116 | }) |
| 117 | } |
| 118 | |
| 119 | func TestDebugCheckHandler_Enabled(t *testing.T) { |
| 120 | t.Run("returns debugEnabled function result for debug level", func(t *testing.T) { |