Codebase list golang-github-go-kit-kit / b8b37a1
log/experimental_level: add basic valuer tests Peter Bourgon 7 years ago
1 changed file(s) with 32 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
119119 t.Errorf("want %q, have %q", want, have)
120120 }
121121 }
122
123 func TestLevelContext(t *testing.T) {
124 var buf bytes.Buffer
125
126 // Wrapping the level logger with a context allows users to use
127 // log.DefaultCaller as per normal.
128 var logger log.Logger
129 logger = log.NewLogfmtLogger(&buf)
130 logger = level.New(logger, level.Config{Allowed: level.AllowAll})
131 logger = log.NewContext(logger).With("caller", log.DefaultCaller)
132
133 level.Info(logger).Log("foo", "bar")
134 if want, have := `caller=level_test.go:134 level=info foo=bar`, strings.TrimSpace(buf.String()); want != have {
135 t.Errorf("want %q, have %q", want, have)
136 }
137 }
138
139 func TestContextLevel(t *testing.T) {
140 var buf bytes.Buffer
141
142 // Wrapping a context with the level logger still works, but requires users
143 // to specify a higher callstack depth value.
144 var logger log.Logger
145 logger = log.NewLogfmtLogger(&buf)
146 logger = log.NewContext(logger).With("caller", log.Caller(5))
147 logger = level.New(logger, level.Config{Allowed: level.AllowAll})
148
149 level.Info(logger).Log("foo", "bar")
150 if want, have := `caller=level_test.go:150 level=info foo=bar`, strings.TrimSpace(buf.String()); want != have {
151 t.Errorf("want %q, have %q", want, have)
152 }
153 }