...
1 package levels_test
2
3 import (
4 "bytes"
5 "os"
6 "testing"
7
8 levels "github.com/go-kit/kit/log/deprecated_levels"
9 "github.com/go-kit/log"
10 )
11
12 func TestDefaultLevels(t *testing.T) {
13 buf := bytes.Buffer{}
14 logger := levels.New(log.NewLogfmtLogger(&buf))
15
16 logger.Debug().Log("msg", "résumé")
17 if want, have := "level=debug msg=résumé\n", buf.String(); want != have {
18 t.Errorf("want %#v, have %#v", want, have)
19 }
20
21 buf.Reset()
22 logger.Info().Log("msg", "Åhus")
23 if want, have := "level=info msg=Åhus\n", buf.String(); want != have {
24 t.Errorf("want %#v, have %#v", want, have)
25 }
26
27 buf.Reset()
28 logger.Error().Log("msg", "© violation")
29 if want, have := "level=error msg=\"© violation\"\n", buf.String(); want != have {
30 t.Errorf("want %#v, have %#v", want, have)
31 }
32
33 buf.Reset()
34 logger.Crit().Log("msg", " ")
35 if want, have := "level=crit msg=\"\\t\"\n", buf.String(); want != have {
36 t.Errorf("want %#v, have %#v", want, have)
37 }
38 }
39
40 func TestModifiedLevels(t *testing.T) {
41 buf := bytes.Buffer{}
42 logger := levels.New(
43 log.NewJSONLogger(&buf),
44 levels.Key("l"),
45 levels.DebugValue("dbg"),
46 levels.InfoValue("nfo"),
47 levels.WarnValue("wrn"),
48 levels.ErrorValue("err"),
49 levels.CritValue("crt"),
50 )
51 logger.With("easter_island", "176°").Debug().Log("msg", "moai")
52 if want, have := `{"easter_island":"176°","l":"dbg","msg":"moai"}`+"\n", buf.String(); want != have {
53 t.Errorf("want %#v, have %#v", want, have)
54 }
55 }
56
57 func ExampleLevels() {
58 logger := levels.New(log.NewLogfmtLogger(os.Stdout))
59 logger.Debug().Log("msg", "hello")
60 logger.With("context", "foo").Warn().Log("err", "error")
61
62
63
64
65 }
66
View as plain text