-
-
Notifications
You must be signed in to change notification settings - Fork 93
/
Copy pathlogging_test.go
45 lines (37 loc) · 1.07 KB
/
logging_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package centrifuge
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestLogLevelToString(t *testing.T) {
level := LogLevelToString(LogLevelDebug)
require.Equal(t, "debug", level)
}
type testHandler struct {
count int
}
func (h *testHandler) Handle(_ LogEntry) {
h.count++
}
func TestLogger(t *testing.T) {
h := testHandler{}
l := newLogger(LogLevelError, h.Handle)
require.NotNil(t, l)
l.log(newLogEntry(LogLevelDebug, "test"))
require.Equal(t, 0, h.count)
l.log(newLogEntry(LogLevelError, "test"))
require.Equal(t, 1, h.count)
require.False(t, l.enabled(LogLevelDebug))
require.True(t, l.enabled(LogLevelError))
}
func TestNewLogEntry(t *testing.T) {
entry := newLogEntry(LogLevelDebug, "test")
require.Equal(t, LogLevelDebug, entry.Level)
require.Equal(t, "test", entry.Message)
require.Nil(t, entry.Fields)
entry = newLogEntry(LogLevelError, "test", map[string]any{"one": true})
require.Equal(t, LogLevelError, entry.Level)
require.Equal(t, "test", entry.Message)
require.NotNil(t, entry.Fields)
require.Equal(t, true, entry.Fields["one"].(bool))
}