blob: 5405106ac5cfe18516afb3542755bafd2bbbce47 [file] [edit]
package tailfile
import (
"io"
"os"
"path/filepath"
"testing"
)
func FuzzTailFile(f *testing.F) {
f.Fuzz(func(t *testing.T, fileBytes []byte, n uint64) {
tempDir := t.TempDir()
fil, err := os.Create(filepath.Join(tempDir, "tailFile"))
if err != nil {
t.Fatalf("failed to create test file: %v", err)
}
defer fil.Close()
_, err = fil.Write(fileBytes)
if err != nil {
t.Fatal(err)
}
_, err = fil.Seek(0, io.SeekStart)
if err != nil {
t.Fatal(err)
}
// Exercise TailFile with arbitrary inputs. Errors are expected for some
// inputs; the fuzz target is only checking that it doesn't panic.
_, _ = TailFile(fil, int(n))
})
}