diff options
Diffstat (limited to 'src/bytes/reader_test.go')
| -rw-r--r-- | src/bytes/reader_test.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/bytes/reader_test.go b/src/bytes/reader_test.go index b929a28260..add985d57e 100644 --- a/src/bytes/reader_test.go +++ b/src/bytes/reader_test.go @@ -256,3 +256,23 @@ func TestReaderLenSize(t *testing.T) { t.Errorf("Size = %d; want 3", r.Size()) } } + +func TestReaderReset(t *testing.T) { + r := NewReader([]byte("世界")) + if _, _, err := r.ReadRune(); err != nil { + t.Errorf("ReadRune: unexpected error: %v", err) + } + + const want = "abcdef" + r.Reset([]byte(want)) + if err := r.UnreadRune(); err == nil { + t.Errorf("UnreadRune: expected error, got nil") + } + buf, err := ioutil.ReadAll(r) + if err != nil { + t.Errorf("ReadAll: unexpected error: %v", err) + } + if got := string(buf); got != want { + t.Errorf("ReadAll: got %q, want %q", got, want) + } +} |
