...

Source file src/cdr.dev/slog/sloggers/slogjson/slogjson_test.go

Documentation: cdr.dev/slog/sloggers/slogjson

     1  package slogjson_test
     2  
     3  import (
     4  	"bytes"
     5  	"context"
     6  	"fmt"
     7  	"runtime"
     8  	"testing"
     9  
    10  	"go.opencensus.io/trace"
    11  
    12  	"cdr.dev/slog"
    13  	"cdr.dev/slog/internal/assert"
    14  	"cdr.dev/slog/internal/entryjson"
    15  	"cdr.dev/slog/sloggers/slogjson"
    16  )
    17  
    18  var _, slogjsonTestFile, _, _ = runtime.Caller(0)
    19  
    20  var bg = context.Background()
    21  
    22  func TestMake(t *testing.T) {
    23  	t.Parallel()
    24  
    25  	ctx, s := trace.StartSpan(bg, "meow")
    26  	b := &bytes.Buffer{}
    27  	l := slog.Make(slogjson.Sink(b))
    28  	l = l.Named("named")
    29  	l.Error(ctx, "line1\n\nline2", slog.F("wowow", "me\nyou"))
    30  
    31  	j := entryjson.Filter(b.String(), "ts")
    32  	exp := fmt.Sprintf(`{"level":"ERROR","msg":"line1\n\nline2","caller":"%v:29","func":"cdr.dev/slog/sloggers/slogjson_test.TestMake","logger_names":["named"],"trace":"%v","span":"%v","fields":{"wowow":"me\nyou"}}
    33  `, slogjsonTestFile, s.SpanContext().TraceID, s.SpanContext().SpanID)
    34  	assert.Equal(t, "entry", exp, j)
    35  }
    36  

View as plain text