MCPcopy
hub / github.com/rs/zerolog / TestHook

Function TestHook

hook_test.go:47–176  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

45)
46
47func TestHook(t *testing.T) {
48 tests := []struct {
49 name string
50 want string
51 test func(log Logger)
52 }{
53 {"Message", `{"message":"test message"}` + "\n", func(log Logger) {
54 log = log.Hook()
55 log.Log().Msg("test message")
56 }},
57 {"Message", `{"level_name":"nolevel","message":"test message"}` + "\n", func(log Logger) {
58 log = log.Hook(levelNameHook)
59 log.Log().Msg("test message")
60 }},
61 {"NoLevel", `{"level_name":"nolevel"}` + "\n", func(log Logger) {
62 log = log.Hook(levelNameHook)
63 log.Log().Msg("")
64 }},
65 {"Print", `{"level":"debug","level_name":"debug"}` + "\n", func(log Logger) {
66 log = log.Hook(levelNameHook)
67 log.Print("")
68 }},
69 {"Error", `{"level":"error","level_name":"error"}` + "\n", func(log Logger) {
70 log = log.Hook(levelNameHook)
71 log.Error().Msg("")
72 }},
73 {"Copy/1", `{"copy_has_level":false,"copy_msg":""}` + "\n", func(log Logger) {
74 log = log.Hook(copyHook)
75 log.Log().Msg("")
76 }},
77 {"Copy/2", `{"level":"info","copy_has_level":true,"copy_level":"info","copy_msg":"a message","message":"a message"}` + "\n", func(log Logger) {
78 log = log.Hook(copyHook)
79 log.Info().Msg("a message")
80 }},
81 {"Multi", `{"level":"error","level_name":"error","has_level":true,"test":"logged"}` + "\n", func(log Logger) {
82 log = log.Hook(levelNameHook).Hook(simpleHook)
83 log.Error().Msg("")
84 }},
85 {"Multi/Message", `{"level":"error","level_name":"error","has_level":true,"test":"logged","message":"a message"}` + "\n", func(log Logger) {
86 log = log.Hook(levelNameHook).Hook(simpleHook)
87 log.Error().Msg("a message")
88 }},
89 {"Output/single/pre", `{"level":"error","level_name":"error"}` + "\n", func(log Logger) {
90 ignored := &bytes.Buffer{}
91 log = New(ignored).Hook(levelNameHook).Output(log.w)
92 log.Error().Msg("")
93 }},
94 {"Output/single/post", `{"level":"error","level_name":"error"}` + "\n", func(log Logger) {
95 ignored := &bytes.Buffer{}
96 log = New(ignored).Output(log.w).Hook(levelNameHook)
97 log.Error().Msg("")
98 }},
99 {"Output/multi/pre", `{"level":"error","level_name":"error","has_level":true,"test":"logged"}` + "\n", func(log Logger) {
100 ignored := &bytes.Buffer{}
101 log = New(ignored).Hook(levelNameHook).Hook(simpleHook).Output(log.w)
102 log.Error().Msg("")
103 }},
104 {"Output/multi/post", `{"level":"error","level_name":"error","has_level":true,"test":"logged"}` + "\n", func(log Logger) {

Callers

nothing calls this directly

Calls 15

NewFunction · 0.85
HookMethod · 0.80
MsgMethod · 0.80
PrintMethod · 0.80
OutputMethod · 0.80
LoggerMethod · 0.80
WithMethod · 0.80
decodeIfBinaryToStringFunction · 0.70
LogMethod · 0.65
InfoMethod · 0.65
RunMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…