github.com/bluenviron/mediacommon@v1.9.3/pkg/codecs/av1/obu_header_test.go (about) 1 package av1 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/require" 7 ) 8 9 func TestOBUHeaderUnmarshal(t *testing.T) { 10 for _, ca := range []struct { 11 name string 12 byts []byte 13 h OBUHeader 14 }{ 15 { 16 "sequence header", 17 []byte{ 18 0x0a, 0x0e, 0x00, 0x00, 0x00, 0x4a, 0xab, 0xbf, 19 0xc3, 0x77, 0x6b, 0xe4, 0x40, 0x40, 0x40, 0x41, 20 }, 21 OBUHeader{ 22 Type: OBUTypeSequenceHeader, 23 HasSize: true, 24 }, 25 }, 26 } { 27 t.Run(ca.name, func(t *testing.T) { 28 var h OBUHeader 29 err := h.Unmarshal(ca.byts) 30 require.NoError(t, err) 31 require.Equal(t, ca.h, h) 32 }) 33 } 34 } 35 36 func FuzzOBUHeaderUnmarshal(f *testing.F) { 37 f.Fuzz(func(_ *testing.T, b []byte) { 38 var h OBUHeader 39 h.Unmarshal(b) //nolint:errcheck 40 }) 41 }