8 kr "github.com/kr/logfmt"
11 func BenchmarkDecodeKeyval(b *testing.B) {
14 for i := 0; i < rows; i++ {
15 data = append(data, "a=1 b=\"bar\" ƒ=2h3s r=\"esc\\tmore stuff\" d x=sf \n"...)
18 b.SetBytes(int64(len(data)))
20 for i := 0; i < b.N; i++ {
22 dec = NewDecoder(bytes.NewReader(data))
25 for dec.ScanRecord() {
26 for dec.ScanKeyval() {
30 if err := dec.Err(); err != nil {
31 b.Errorf("got %v, want %v", err, nil)
34 b.Errorf("got %v, want %v", j, rows)
39 func BenchmarkKRDecode(b *testing.B) {
42 for i := 0; i < rows; i++ {
43 data = append(data, "a=1 b=\"bar\" ƒ=2h3s r=\"esc\\tmore stuff\" d x=sf \n"...)
46 b.SetBytes(int64(len(data)))
48 for i := 0; i < b.N; i++ {
50 s = bufio.NewScanner(bytes.NewReader(data))
55 for err == nil && s.Scan() {
56 err = kr.Unmarshal(s.Bytes(), &dh)
63 b.Errorf("got %v, want %v", err, nil)
66 b.Errorf("got %v, want %v", j, rows)
71 type discardHandler struct{}
73 func (discardHandler) HandleLogfmt(key, val []byte) error {