| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package jsoniter
- import (
- "bytes"
- "github.com/stretchr/testify/require"
- "io"
- "testing"
- )
- func Test_read_by_one(t *testing.T) {
- iter := Parse(ConfigDefault, bytes.NewBufferString("abc"), 1)
- b := iter.readByte()
- if iter.Error != nil {
- t.Fatal(iter.Error)
- }
- if b != 'a' {
- t.Fatal(b)
- }
- iter.unreadByte()
- if iter.Error != nil {
- t.Fatal(iter.Error)
- }
- b = iter.readByte()
- if iter.Error != nil {
- t.Fatal(iter.Error)
- }
- if b != 'a' {
- t.Fatal(b)
- }
- }
- func Test_read_by_two(t *testing.T) {
- should := require.New(t)
- iter := Parse(ConfigDefault, bytes.NewBufferString("abc"), 2)
- b := iter.readByte()
- should.Nil(iter.Error)
- should.Equal(byte('a'), b)
- b = iter.readByte()
- should.Nil(iter.Error)
- should.Equal(byte('b'), b)
- iter.unreadByte()
- should.Nil(iter.Error)
- iter.unreadByte()
- should.Nil(iter.Error)
- b = iter.readByte()
- should.Nil(iter.Error)
- should.Equal(byte('a'), b)
- }
- func Test_read_until_eof(t *testing.T) {
- iter := Parse(ConfigDefault, bytes.NewBufferString("abc"), 2)
- iter.readByte()
- iter.readByte()
- b := iter.readByte()
- if iter.Error != nil {
- t.Fatal(iter.Error)
- }
- if b != 'c' {
- t.Fatal(b)
- }
- iter.readByte()
- if iter.Error != io.EOF {
- t.Fatal(iter.Error)
- }
- }
|