(t *testing.T)
| 45 | ) |
| 46 | |
| 47 | func 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) { |
nothing calls this directly
no test coverage detected
searching dependent graphs…