readFully returns the entire data produced by the given Reader, by reading up to maxRead bytes at a time.
(r io.Reader, maxRead int)
| 29 | |
| 30 | // readFully returns the entire data produced by the given Reader, by reading up to maxRead bytes at a time. |
| 31 | func readFully(r io.Reader, maxRead int) ([]byte, error) { |
| 32 | var b bytes.Buffer |
| 33 | readBuffer := make([]byte, maxRead) |
| 34 | for { |
| 35 | n, err := r.Read(readBuffer) |
| 36 | b.Write(readBuffer[:n]) |
| 37 | if errors.Cause(err) == io.EOF { |
| 38 | return b.Bytes(), nil |
| 39 | } else if err != nil { |
| 40 | return b.Bytes(), err |
| 41 | } |
| 42 | } |
| 43 | } |
| 44 | |
| 45 | func checkData(ctx context.Context, s Data, expected []byte) { |
| 46 | assert.For(ctx, "size").That(s.Size()).Equals(uint64(len(expected))) |
no test coverage detected