1
0
html/writer_test.go

32 lines
448 B
Go
Raw Normal View History

2025-10-05 20:06:39 +02:00
package html_test
import (
"errors"
"io"
)
2025-10-05 21:25:53 +02:00
type errorWriter struct {
out io.Writer
2025-10-05 20:06:39 +02:00
failAfter int
}
2025-10-05 21:25:53 +02:00
func (ew *errorWriter) Write(p []byte) (int, error) {
2025-10-05 20:06:39 +02:00
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")
}