1package binary
2
3import (
4 "bytes"
5 "encoding/binary"
6)
7
8func (s *BinarySuite) TestWrite() {
9 expected := bytes.NewBuffer(nil)
10 err := binary.Write(expected, binary.BigEndian, int64(42))
11 s.NoError(err)
12 err = binary.Write(expected, binary.BigEndian, int32(42))
13 s.NoError(err)
14
15 buf := bytes.NewBuffer(nil)
16 err = Write(buf, int64(42), int32(42))
17 s.NoError(err)
18 s.Equal(expected, buf)
19}
20
21func (s *BinarySuite) TestWriteUint32() {
22 expected := bytes.NewBuffer(nil)
23 err := binary.Write(expected, binary.BigEndian, int32(42))
24 s.NoError(err)
25
26 buf := bytes.NewBuffer(nil)
27 err = WriteUint32(buf, 42)
28 s.NoError(err)
29 s.Equal(expected, buf)
30}
31
32func (s *BinarySuite) TestWriteUint16() {
33 expected := bytes.NewBuffer(nil)
34 err := binary.Write(expected, binary.BigEndian, int16(42))
35 s.NoError(err)
36
37 buf := bytes.NewBuffer(nil)
38 err = WriteUint16(buf, 42)
39 s.NoError(err)
40 s.Equal(expected, buf)
41}
42
43func (s *BinarySuite) TestWriteVariableWidthInt() {
44 buf := bytes.NewBuffer(nil)
45
46 err := WriteVariableWidthInt(buf, 366)
47 s.NoError(err)
48 s.Equal([]byte{129, 110}, buf.Bytes())
49}
50
51func (s *BinarySuite) TestWriteVariableWidthIntShort() {
52 buf := bytes.NewBuffer(nil)
53
54 err := WriteVariableWidthInt(buf, 19)
55 s.NoError(err)
56 s.Equal([]byte{19}, buf.Bytes())
57}