1
0
html/writer_test.go

32 lines
448 B
Go

package html_test
import (
"errors"
"io"
)
type errorWriter struct {
out io.Writer
failAfter int
}
func (ew *errorWriter) Write(p []byte) (int, error) {
wp := p
if len(wp) > ew.failAfter {
wp = wp[:ew.failAfter]
}
ew.failAfter -= len(wp)
if ew.out != nil {
if n, err := ew.out.Write(wp); err != nil {
return n, err
}
}
if ew.failAfter > 0 {
return len(wp), nil
}
return len(wp), errors.New("test write error")
}