MCPcopy
hub / github.com/sirupsen/logrus / TestWithFieldsShouldAllowAssignments

Function TestWithFieldsShouldAllowAssignments

logrus_test.go:193–221  ·  logrus_test.go::TestWithFieldsShouldAllowAssignments
(t *testing.T)

Source from the content-addressed store, hash-verified

191}
192
193func TestWithFieldsShouldAllowAssignments(t *testing.T) {
194 var buffer bytes.Buffer
195 var fields Fields
196
197 logger := New()
198 logger.Out = &buffer
199 logger.Formatter = new(JSONFormatter)
200
201 localLog := logger.WithFields(Fields{
202 "key1": "value1",
203 })
204
205 localLog.WithField("key2", "value2").Info("test")
206 err := json.Unmarshal(buffer.Bytes(), &fields)
207 require.NoError(t, err)
208
209 assert.Equal(t, "value2", fields["key2"])
210 assert.Equal(t, "value1", fields["key1"])
211
212 buffer = bytes.Buffer{}
213 fields = Fields{}
214 localLog.Info("test")
215 err = json.Unmarshal(buffer.Bytes(), &fields)
216 require.NoError(t, err)
217
218 _, ok := fields["key2"]
219 assert.False(t, ok)
220 assert.Equal(t, "value1", fields["key1"])
221}
222
223func TestUserSuppliedFieldDoesNotOverwriteDefaults(t *testing.T) {
224 LogAndAssertJSON(t, func(log *Logger) {

Callers

nothing calls this directly

Calls 5

NewFunction · 0.85
BytesMethod · 0.80
WithFieldsMethod · 0.65
InfoMethod · 0.65
WithFieldMethod · 0.65

Tested by

no test coverage detected