const smallMaxTokenSize …
func TestSpace(t *testing.T) { … }
var scanTests …
func TestScanByte(t *testing.T) { … }
func TestScanRune(t *testing.T) { … }
var wordScanTests …
func TestScanWords(t *testing.T) { … }
type slowReader …
func (sr *slowReader) Read(p []byte) (n int, err error) { … }
func genLine(buf *bytes.Buffer, lineNum, n int, addNewline bool) { … }
func TestScanLongLines(t *testing.T) { … }
func TestScanLineTooLong(t *testing.T) { … }
func testNoNewline(text string, lines []string, t *testing.T) { … }
func TestScanLineNoNewline(t *testing.T) { … }
func TestScanLineReturnButNoNewline(t *testing.T) { … }
func TestScanLineEmptyFinalLine(t *testing.T) { … }
func TestScanLineEmptyFinalLineWithCR(t *testing.T) { … }
var testError …
func TestSplitError(t *testing.T) { … }
func TestErrAtEOF(t *testing.T) { … }
type alwaysError …
func (alwaysError) Read(p []byte) (int, error) { … }
func TestNonEOFWithEmptyRead(t *testing.T) { … }
type endlessZeros …
func (endlessZeros) Read(p []byte) (int, error) { … }
func TestBadReader(t *testing.T) { … }
func TestScanWordsExcessiveWhiteSpace(t *testing.T) { … }
func commaSplit(data []byte, atEOF bool) (advance int, token []byte, err error) { … }
func testEmptyTokens(t *testing.T, text string, values []string) { … }
func TestEmptyTokens(t *testing.T) { … }
func TestWithNoEmptyTokens(t *testing.T) { … }
func loopAtEOFSplit(data []byte, atEOF bool) (advance int, token []byte, err error) { … }
func TestDontLoopForever(t *testing.T) { … }
func TestBlankLines(t *testing.T) { … }
type countdown …
func (c *countdown) split(data []byte, atEOF bool) (advance int, token []byte, err error) { … }
func TestEmptyLinesOK(t *testing.T) { … }
func TestHugeBuffer(t *testing.T) { … }
type negativeEOFReader …
func (r *negativeEOFReader) Read(p []byte) (int, error) { … }
func TestNegativeEOFReader(t *testing.T) { … }
type largeReader …
func (largeReader) Read(p []byte) (int, error) { … }
func TestLargeReader(t *testing.T) { … }