github.com/stffabi/git-lfs@v2.3.5-0.20180214015214-8eeaa8d88902+incompatible/git/odb/pack/packfile_decode_test.go (about) 1 package pack 2 3 import ( 4 "bytes" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestDecodePackfileDecodesIntegerVersion(t *testing.T) { 11 p, err := DecodePackfile(bytes.NewReader([]byte{ 12 'P', 'A', 'C', 'K', // Pack header. 13 0x0, 0x0, 0x0, 0x2, // Pack version. 14 0x0, 0x0, 0x0, 0x0, // Number of packed objects. 15 })) 16 17 assert.NoError(t, err) 18 assert.EqualValues(t, 2, p.Version) 19 } 20 21 func TestDecodePackfileDecodesIntegerCount(t *testing.T) { 22 p, err := DecodePackfile(bytes.NewReader([]byte{ 23 'P', 'A', 'C', 'K', // Pack header. 24 0x0, 0x0, 0x0, 0x2, // Pack version. 25 0x0, 0x0, 0x1, 0x2, // Number of packed objects. 26 })) 27 28 assert.NoError(t, err) 29 assert.EqualValues(t, 258, p.Objects) 30 } 31 32 func TestDecodePackfileReportsBadHeaders(t *testing.T) { 33 p, err := DecodePackfile(bytes.NewReader([]byte{ 34 'W', 'R', 'O', 'N', 'G', // Malformed pack header. 35 0x0, 0x0, 0x0, 0x0, // Pack version. 36 0x0, 0x0, 0x0, 0x0, // Number of packed objects. 37 })) 38 39 assert.Equal(t, errBadPackHeader, err) 40 assert.Nil(t, p) 41 }