Overview

Package iotest implements Readers and Writers useful mainly for testing.

Index

logger.go writer.go

func

  1. func DataErrReader(r .Reader) .Reader

DataErrReader changes the way errors are handled by a Reader. Normally, a Reader
returns an error (typically EOF) from the first Read call after the last piece
of data is read. DataErrReader wraps a Reader and changes its behavior so the
final error is returned along with the final data, instead of in the first call
after the final data.

func

HalfReader returns a Reader that implements Read by reading half as many
requested bytes from r.

  1. func NewReadLogger(prefix , r io.) io.

NewReadLogger returns a reader that behaves like r except that it logs (using
log.Printf) each read to standard error, printing the prefix and the hexadecimal
data read.

func NewWriteLogger

NewWriteLogger returns a writer that behaves like w except that it logs (using
log.Printf) each write to standard error, printing the prefix and the
hexadecimal data written.

func OneByteReader

  1. func OneByteReader(r io.) io.

OneByteReader returns a Reader that implements each non-empty Read by reading
one byte from r.

TimeoutReader returns ErrTimeout on the second read with no data. Subsequent
calls to read succeed.

func TruncateWriter