journal/wire_proto_test.go

39 lines
716 B
Go

package journal
import (
"bytes"
"encoding/hex"
"net"
"testing"
)
func TestWireWrite(t *testing.T) {
var buf net.Buffers
out := bytes.NewBuffer(nil)
err := WireWrite(&buf, out, []Attr{
Attr{
Key: AttrKey{key: "MESSAGE"},
Value: []byte("hello, world!"),
},
priorityAttrMap[PriDebug],
Attr{
Key: AttrKey{key: "MULTI_LINE"},
Value: []byte("hello,\nworld!"),
},
})
if err != nil {
t.Errorf("unexpected error writing to buffer: %v", err)
}
if out.String() != wireWriteExpected {
t.Error("unexpected output buffer:\n" + hex.Dump(out.Bytes()))
}
}
const wireWriteExpected = `MESSAGE=hello, world!
PRIORITY=7
MULTI_LINE
` + "\x0D\x00\x00\x00\x00\x00\x00\x00" + `hello,
world!
`