23 lines
458 B
Go
23 lines
458 B
Go
package logging
|
|||
|
|
|
||
|
|
import (
|
||
|
|
"bytes"
|
||
|
|
"strings"
|
||
|
|
"testing"
|
||
|
|
)
|
||
|
|
|
||
|
|
func TestNewWritesStructuredLog(t *testing.T) {
|
||
|
|
var output bytes.Buffer
|
||
|
|
logger := New(&output)
|
||
|
|
logger.Info("test event", "component", "test")
|
||
|
|
|
||
|
|
value := output.String()
|
||
|
|
if !strings.Contains(value, `"msg":"test event"`) || !strings.Contains(value, `"component":"test"`) {
|
||
|
|
t.Fatalf("log output = %q", value)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func TestNewNilWriterDoesNotPanic(t *testing.T) {
|
||
|
|
New(nil).Info("discarded")
|
||
|
|
}
|