| package logtree | 
 |  | 
 | import ( | 
 | 	"testing" | 
 |  | 
 | 	"go.uber.org/zap" | 
 | ) | 
 |  | 
 | func TestZapify(t *testing.T) { | 
 | 	lt := New() | 
 |  | 
 | 	z := Zapify(lt.MustLeveledFor("zap"), zap.InfoLevel) | 
 | 	z.Info("foo", zap.String("strp", "strv"), zap.Int("intp", 42)) | 
 | 	z.Warn("foo!", zap.String("strp", "strv"), zap.Int("intp", 1337)) | 
 | 	z.Error("foo!!") | 
 |  | 
 | 	res, err := lt.Read("zap", WithBacklog(BacklogAllAvailable)) | 
 | 	if err != nil { | 
 | 		t.Fatalf("Read: %v", err) | 
 | 	} | 
 | 	defer res.Close() | 
 |  | 
 | 	if want, got := 3, len(res.Backlog); want != got { | 
 | 		t.Errorf("Wanted %d entries, got %d", want, got) | 
 | 	} else { | 
 | 		for i, te := range []struct { | 
 | 			msg string | 
 | 			sev Severity | 
 | 		}{ | 
 | 			{`foo {"intp":42,"strp":"strv"}`, INFO}, | 
 | 			{`foo! {"intp":1337,"strp":"strv"}`, WARNING}, | 
 | 			{`foo!!`, ERROR}, | 
 | 		} { | 
 | 			if want, got := te.msg, res.Backlog[i].Leveled.messages[0]; want != got { | 
 | 				t.Errorf("Line %d: wanted message %q, got %q", i, want, got) | 
 | 			} | 
 | 			if want, got := te.sev, res.Backlog[i].Leveled.severity; want != got { | 
 | 				t.Errorf("Line %d: wanted level %s, got %s", i, want, got) | 
 | 			} | 
 | 		} | 
 | 	} | 
 | } |