github.com/bigzoro/my_simplechain@v0.0.0-20240315012955-8ad0a2a29bb9/p2p/rlpx/buffer_test.go (about) 1 package rlpx 2 3 import ( 4 "bytes" 5 "testing" 6 7 "github.com/bigzoro/my_simplechain/common/hexutil" 8 "github.com/stretchr/testify/assert" 9 ) 10 11 func TestReadBufferReset(t *testing.T) { 12 reader := bytes.NewReader(hexutil.MustDecode("0x010202030303040505")) 13 var b readBuffer 14 15 s1, _ := b.read(reader, 1) 16 s2, _ := b.read(reader, 2) 17 s3, _ := b.read(reader, 3) 18 19 assert.Equal(t, []byte{1}, s1) 20 assert.Equal(t, []byte{2, 2}, s2) 21 assert.Equal(t, []byte{3, 3, 3}, s3) 22 23 b.reset() 24 25 s4, _ := b.read(reader, 1) 26 s5, _ := b.read(reader, 2) 27 28 assert.Equal(t, []byte{4}, s4) 29 assert.Equal(t, []byte{5, 5}, s5) 30 31 s6, err := b.read(reader, 2) 32 33 assert.EqualError(t, err, "EOF") 34 assert.Nil(t, s6) 35 }