7 "github.com/git-lfs/git-lfs/errors"
9 "github.com/stretchr/testify/assert"
12 func TestOffsetReaderAtReadsAtOffset(t *testing.T) {
13 bo := &OffsetReaderAt{
14 r: bytes.NewReader([]byte{0x0, 0x1, 0x2, 0x3}),
19 n1, e1 := bo.Read(x1[:])
22 assert.Equal(t, 1, n1)
24 assert.EqualValues(t, 0x1, x1[0])
27 n2, e2 := bo.Read(x2[:])
30 assert.Equal(t, 1, n2)
31 assert.EqualValues(t, 0x2, x2[0])
34 func TestOffsetReaderPropogatesErrors(t *testing.T) {
35 expected := errors.New("git/odb/pack: testing")
36 bo := &OffsetReaderAt{
37 r: &ErrReaderAt{Err: expected},
41 n, err := bo.Read(make([]byte, 1))
43 assert.Equal(t, expected, err)
47 type ErrReaderAt struct {
51 func (e *ErrReaderAt) ReadAt(p []byte, at int64) (n int, err error) {