]> Sergey Matveev's repositories - btrtrc.git/blob - peer_protocol/decoder_fuzz_test.go
Add some fuzzing in peer_protocol
[btrtrc.git] / peer_protocol / decoder_fuzz_test.go
1 package peer_protocol
2
3 import (
4         "bufio"
5         "bytes"
6         "testing"
7 )
8
9 func FuzzDecoder(f *testing.F) {
10         f.Add([]byte("\x00\x00\x00\x00"))
11         f.Add([]byte("\x00\x00\x00\x01\x00"))
12         f.Add([]byte("\x00\x00\x00\x03\x14\x00"))
13         f.Fuzz(func(t *testing.T, b []byte) {
14                 d := Decoder{
15                         R: bufio.NewReader(bytes.NewReader(b)),
16                 }
17                 var m Message
18                 err := d.Decode(&m)
19                 if err != nil {
20                         t.Skip(err)
21                 }
22         })
23 }