Skip to content

Commit

Permalink
chore: update golangci-lint (#8988)
Browse files Browse the repository at this point in the history
* chore: update golangci-lint

Signed-off-by: Michael Crenshaw <michael@crenshaw.dev>
  • Loading branch information
crenshaw-dev committed Jun 13, 2022
1 parent af5348c commit 909f94a
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 24 deletions.
22 changes: 0 additions & 22 deletions .golangci.yml

This file was deleted.

4 changes: 2 additions & 2 deletions util/io/bytereadseeker.go
Expand Up @@ -14,7 +14,7 @@ type byteReadSeeker struct {
offset int64
}

func (f byteReadSeeker) Read(b []byte) (int, error) {
func (f *byteReadSeeker) Read(b []byte) (int, error) {
if f.offset >= int64(len(f.data)) {
return 0, io.EOF
}
Expand All @@ -23,7 +23,7 @@ func (f byteReadSeeker) Read(b []byte) (int, error) {
return n, nil
}

func (f byteReadSeeker) Seek(offset int64, whence int) (int64, error) {
func (f *byteReadSeeker) Seek(offset int64, whence int) (int64, error) {
switch whence {
case 1:
offset += f.offset
Expand Down
71 changes: 71 additions & 0 deletions util/io/bytereadseeker_test.go
@@ -0,0 +1,71 @@
package io

import (
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"io"
"testing"
)

func TestByteReadSeeker_Read(t *testing.T) {
inString := "hello world"
reader := NewByteReadSeeker([]byte(inString))
var bytes = make([]byte, 11)
n, err := reader.Read(bytes)
require.NoError(t, err)
assert.Equal(t, len(inString), n)
assert.Equal(t, inString, string(bytes))
_, err = reader.Read(bytes)
assert.ErrorIs(t, err, io.EOF)
}

func TestByteReadSeeker_Seek_Start(t *testing.T) {
inString := "hello world"
reader := NewByteReadSeeker([]byte(inString))
offset, err := reader.Seek(6, io.SeekStart)
require.NoError(t, err)
assert.Equal(t, int64(6), offset)
var bytes = make([]byte, 5)
n, err := reader.Read(bytes)
require.NoError(t, err)
assert.Equal(t, 5, n)
assert.Equal(t, "world", string(bytes))
}

func TestByteReadSeeker_Seek_Current(t *testing.T) {
inString := "hello world"
reader := NewByteReadSeeker([]byte(inString))
offset, err := reader.Seek(3, io.SeekCurrent)
require.NoError(t, err)
assert.Equal(t, int64(3), offset)
offset, err = reader.Seek(3, io.SeekCurrent)
require.NoError(t, err)
assert.Equal(t, int64(6), offset)
var bytes = make([]byte, 5)
n, err := reader.Read(bytes)
require.NoError(t, err)
assert.Equal(t, 5, n)
assert.Equal(t, "world", string(bytes))
}

func TestByteReadSeeker_Seek_End(t *testing.T) {
inString := "hello world"
reader := NewByteReadSeeker([]byte(inString))
offset, err := reader.Seek(-5, io.SeekEnd)
require.NoError(t, err)
assert.Equal(t, int64(6), offset)
var bytes = make([]byte, 5)
n, err := reader.Read(bytes)
require.NoError(t, err)
assert.Equal(t, 5, n)
assert.Equal(t, "world", string(bytes))
}

func TestByteReadSeeker_Seek_OutOfBounds(t *testing.T) {
inString := "hello world"
reader := NewByteReadSeeker([]byte(inString))
_, err := reader.Seek(12, io.SeekStart)
assert.Error(t, err)
_, err = reader.Seek(-1, io.SeekStart)
assert.Error(t, err)
}

0 comments on commit 909f94a

Please sign in to comment.