]> Cypherpunks repositories - gostls13.git/commitdiff
bytes, strings: more consistent error messages
authorRobert Griesemer <gri@golang.org>
Fri, 11 Apr 2014 04:45:41 +0000 (21:45 -0700)
committerRobert Griesemer <gri@golang.org>
Fri, 11 Apr 2014 04:45:41 +0000 (21:45 -0700)
LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/86060044

src/pkg/bytes/reader.go
src/pkg/bytes/reader_test.go
src/pkg/strings/reader.go
src/pkg/strings/reader_test.go

index 61845e350b5a27b303a72f5c0228f8951e178884..73b7213446ec5e762b8600fe495e35bc7c3db195 100644 (file)
@@ -45,7 +45,7 @@ func (r *Reader) Read(b []byte) (n int, err error) {
 func (r *Reader) ReadAt(b []byte, off int64) (n int, err error) {
        // cannot modify state - see io.ReaderAt
        if off < 0 {
-               return 0, errors.New("bytes: invalid offset")
+               return 0, errors.New("bytes.Reader.ReadAt: negative offset")
        }
        if off >= int64(len(r.s)) {
                return 0, io.EOF
@@ -68,11 +68,11 @@ func (r *Reader) ReadByte() (b byte, err error) {
 }
 
 func (r *Reader) UnreadByte() error {
+       r.prevRune = -1
        if r.i <= 0 {
-               return errors.New("bytes.Reader: at beginning of slice")
+               return errors.New("bytes.Reader.UnreadByte: at beginning of slice")
        }
        r.i--
-       r.prevRune = -1
        return nil
 }
 
@@ -93,7 +93,7 @@ func (r *Reader) ReadRune() (ch rune, size int, err error) {
 
 func (r *Reader) UnreadRune() error {
        if r.prevRune < 0 {
-               return errors.New("bytes.Reader: previous operation was not ReadRune")
+               return errors.New("bytes.Reader.UnreadRune: previous operation was not ReadRune")
        }
        r.i = int64(r.prevRune)
        r.prevRune = -1
@@ -112,10 +112,10 @@ func (r *Reader) Seek(offset int64, whence int) (int64, error) {
        case 2:
                abs = int64(len(r.s)) + offset
        default:
-               return 0, errors.New("bytes: invalid whence")
+               return 0, errors.New("bytes.Reader.Seek: invalid whence")
        }
        if abs < 0 {
-               return 0, errors.New("bytes: negative position")
+               return 0, errors.New("bytes.Reader.Seek: negative position")
        }
        r.i = abs
        return abs, nil
index 7abaee7fad4a0a1b4c4ae403c5a389530c411e02..f1a51b1be47639e8625ea2cd6bd280ac57a04fa2 100644 (file)
@@ -27,7 +27,7 @@ func TestReader(t *testing.T) {
                {seek: os.SEEK_SET, off: 0, n: 20, want: "0123456789"},
                {seek: os.SEEK_SET, off: 1, n: 1, want: "1"},
                {seek: os.SEEK_CUR, off: 1, wantpos: 3, n: 2, want: "34"},
-               {seek: os.SEEK_SET, off: -1, seekerr: "bytes: negative position"},
+               {seek: os.SEEK_SET, off: -1, seekerr: "bytes.Reader.Seek: negative position"},
                {seek: os.SEEK_SET, off: 1 << 33, wantpos: 1 << 33},
                {seek: os.SEEK_CUR, off: 1, wantpos: 1<<33 + 1},
                {seek: os.SEEK_SET, n: 5, want: "01234"},
@@ -84,7 +84,7 @@ func TestReaderAt(t *testing.T) {
                {1, 9, "123456789", nil},
                {11, 10, "", io.EOF},
                {0, 0, "", nil},
-               {-1, 0, "", "bytes: invalid offset"},
+               {-1, 0, "", "bytes.Reader.ReadAt: negative offset"},
        }
        for i, tt := range tests {
                b := make([]byte, tt.n)
index c02d33bd61016f469afc9624a49c2a6f84becdbe..ee83ceb505f86062866e3467dd9340cac3cdadea 100644 (file)
@@ -44,7 +44,7 @@ func (r *Reader) Read(b []byte) (n int, err error) {
 func (r *Reader) ReadAt(b []byte, off int64) (n int, err error) {
        // cannot modify state - see io.ReaderAt
        if off < 0 {
-               return 0, errors.New("strings: invalid offset")
+               return 0, errors.New("strings.Reader.ReadAt: negative offset")
        }
        if off >= int64(len(r.s)) {
                return 0, io.EOF
@@ -67,11 +67,11 @@ func (r *Reader) ReadByte() (b byte, err error) {
 }
 
 func (r *Reader) UnreadByte() error {
+       r.prevRune = -1
        if r.i <= 0 {
-               return errors.New("strings.Reader: at beginning of string")
+               return errors.New("strings.Reader.UnreadByte: at beginning of string")
        }
        r.i--
-       r.prevRune = -1
        return nil
 }
 
@@ -92,7 +92,7 @@ func (r *Reader) ReadRune() (ch rune, size int, err error) {
 
 func (r *Reader) UnreadRune() error {
        if r.prevRune < 0 {
-               return errors.New("strings.Reader: previous operation was not ReadRune")
+               return errors.New("strings.Reader.UnreadRune: previous operation was not ReadRune")
        }
        r.i = int64(r.prevRune)
        r.prevRune = -1
@@ -111,10 +111,10 @@ func (r *Reader) Seek(offset int64, whence int) (int64, error) {
        case 2:
                abs = int64(len(r.s)) + offset
        default:
-               return 0, errors.New("strings: invalid whence")
+               return 0, errors.New("strings.Reader.Seek: invalid whence")
        }
        if abs < 0 {
-               return 0, errors.New("strings: negative position")
+               return 0, errors.New("strings.Reader.Seek: negative position")
        }
        r.i = abs
        return abs, nil
index 5995f210386889fa289a3556e6ef231967fe03d5..4d95355af7d5f1c69d0dded2c1b5edcf644fd698 100644 (file)
@@ -27,7 +27,7 @@ func TestReader(t *testing.T) {
                {seek: os.SEEK_SET, off: 0, n: 20, want: "0123456789"},
                {seek: os.SEEK_SET, off: 1, n: 1, want: "1"},
                {seek: os.SEEK_CUR, off: 1, wantpos: 3, n: 2, want: "34"},
-               {seek: os.SEEK_SET, off: -1, seekerr: "strings: negative position"},
+               {seek: os.SEEK_SET, off: -1, seekerr: "strings.Reader.Seek: negative position"},
                {seek: os.SEEK_SET, off: 1 << 33, wantpos: 1 << 33},
                {seek: os.SEEK_CUR, off: 1, wantpos: 1<<33 + 1},
                {seek: os.SEEK_SET, n: 5, want: "01234"},
@@ -84,7 +84,7 @@ func TestReaderAt(t *testing.T) {
                {1, 9, "123456789", nil},
                {11, 10, "", io.EOF},
                {0, 0, "", nil},
-               {-1, 0, "", "strings: invalid offset"},
+               {-1, 0, "", "strings.Reader.ReadAt: negative offset"},
        }
        for i, tt := range tests {
                b := make([]byte, tt.n)