You've already forked json-iterator
mirror of
https://github.com/json-iterator/go.git
synced 2025-06-24 23:16:47 +02:00
#53 support escapeHtml
This commit is contained in:
@ -7,56 +7,56 @@ import (
|
||||
)
|
||||
|
||||
func Test_string_end(t *testing.T) {
|
||||
end, escaped := ParseString(DEFAULT_CONFIG, `abc"`).findStringEnd()
|
||||
end, escaped := ParseString(ConfigOfDefault, `abc"`).findStringEnd()
|
||||
if end != 4 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
if escaped != false {
|
||||
t.Fatal(escaped)
|
||||
}
|
||||
end, escaped = ParseString(DEFAULT_CONFIG, `abc\\"`).findStringEnd()
|
||||
end, escaped = ParseString(ConfigOfDefault, `abc\\"`).findStringEnd()
|
||||
if end != 6 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
if escaped != true {
|
||||
t.Fatal(escaped)
|
||||
}
|
||||
end, escaped = ParseString(DEFAULT_CONFIG, `abc\\\\"`).findStringEnd()
|
||||
end, escaped = ParseString(ConfigOfDefault, `abc\\\\"`).findStringEnd()
|
||||
if end != 8 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
if escaped != true {
|
||||
t.Fatal(escaped)
|
||||
}
|
||||
end, escaped = ParseString(DEFAULT_CONFIG, `abc\"`).findStringEnd()
|
||||
end, escaped = ParseString(ConfigOfDefault, `abc\"`).findStringEnd()
|
||||
if end != -1 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
if escaped != false {
|
||||
t.Fatal(escaped)
|
||||
}
|
||||
end, escaped = ParseString(DEFAULT_CONFIG, `abc\`).findStringEnd()
|
||||
end, escaped = ParseString(ConfigOfDefault, `abc\`).findStringEnd()
|
||||
if end != -1 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
if escaped != true {
|
||||
t.Fatal(escaped)
|
||||
}
|
||||
end, escaped = ParseString(DEFAULT_CONFIG, `abc\\`).findStringEnd()
|
||||
end, escaped = ParseString(ConfigOfDefault, `abc\\`).findStringEnd()
|
||||
if end != -1 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
if escaped != false {
|
||||
t.Fatal(escaped)
|
||||
}
|
||||
end, escaped = ParseString(DEFAULT_CONFIG, `\\`).findStringEnd()
|
||||
end, escaped = ParseString(ConfigOfDefault, `\\`).findStringEnd()
|
||||
if end != -1 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
if escaped != false {
|
||||
t.Fatal(escaped)
|
||||
}
|
||||
end, escaped = ParseString(DEFAULT_CONFIG, `\`).findStringEnd()
|
||||
end, escaped = ParseString(ConfigOfDefault, `\`).findStringEnd()
|
||||
if end != -1 {
|
||||
t.Fatal(end)
|
||||
}
|
||||
@ -91,54 +91,54 @@ func (reader *StagedReader) Read(p []byte) (n int, err error) {
|
||||
|
||||
func Test_skip_string(t *testing.T) {
|
||||
should := require.New(t)
|
||||
iter := ParseString(DEFAULT_CONFIG, `"abc`)
|
||||
iter := ParseString(ConfigOfDefault, `"abc`)
|
||||
iter.skipString()
|
||||
should.Equal(1, iter.head)
|
||||
iter = ParseString(DEFAULT_CONFIG, `\""abc`)
|
||||
iter = ParseString(ConfigOfDefault, `\""abc`)
|
||||
iter.skipString()
|
||||
should.Equal(3, iter.head)
|
||||
reader := &StagedReader{
|
||||
r1: `abc`,
|
||||
r2: `"`,
|
||||
}
|
||||
iter = Parse(DEFAULT_CONFIG, reader, 4096)
|
||||
iter = Parse(ConfigOfDefault, reader, 4096)
|
||||
iter.skipString()
|
||||
should.Equal(1, iter.head)
|
||||
reader = &StagedReader{
|
||||
r1: `abc`,
|
||||
r2: `1"`,
|
||||
}
|
||||
iter = Parse(DEFAULT_CONFIG, reader, 4096)
|
||||
iter = Parse(ConfigOfDefault, reader, 4096)
|
||||
iter.skipString()
|
||||
should.Equal(2, iter.head)
|
||||
reader = &StagedReader{
|
||||
r1: `abc\`,
|
||||
r2: `"`,
|
||||
}
|
||||
iter = Parse(DEFAULT_CONFIG, reader, 4096)
|
||||
iter = Parse(ConfigOfDefault, reader, 4096)
|
||||
iter.skipString()
|
||||
should.NotNil(iter.Error)
|
||||
reader = &StagedReader{
|
||||
r1: `abc\`,
|
||||
r2: `""`,
|
||||
}
|
||||
iter = Parse(DEFAULT_CONFIG, reader, 4096)
|
||||
iter = Parse(ConfigOfDefault, reader, 4096)
|
||||
iter.skipString()
|
||||
should.Equal(2, iter.head)
|
||||
}
|
||||
|
||||
func Test_skip_object(t *testing.T) {
|
||||
iter := ParseString(DEFAULT_CONFIG, `}`)
|
||||
iter := ParseString(ConfigOfDefault, `}`)
|
||||
iter.skipObject()
|
||||
if iter.head != 1 {
|
||||
t.Fatal(iter.head)
|
||||
}
|
||||
iter = ParseString(DEFAULT_CONFIG, `a}`)
|
||||
iter = ParseString(ConfigOfDefault, `a}`)
|
||||
iter.skipObject()
|
||||
if iter.head != 2 {
|
||||
t.Fatal(iter.head)
|
||||
}
|
||||
iter = ParseString(DEFAULT_CONFIG, `{}}a`)
|
||||
iter = ParseString(ConfigOfDefault, `{}}a`)
|
||||
iter.skipObject()
|
||||
if iter.head != 3 {
|
||||
t.Fatal(iter.head)
|
||||
@ -147,12 +147,12 @@ func Test_skip_object(t *testing.T) {
|
||||
r1: `{`,
|
||||
r2: `}}a`,
|
||||
}
|
||||
iter = Parse(DEFAULT_CONFIG, reader, 4096)
|
||||
iter = Parse(ConfigOfDefault, reader, 4096)
|
||||
iter.skipObject()
|
||||
if iter.head != 2 {
|
||||
t.Fatal(iter.head)
|
||||
}
|
||||
iter = ParseString(DEFAULT_CONFIG, `"}"}a`)
|
||||
iter = ParseString(ConfigOfDefault, `"}"}a`)
|
||||
iter.skipObject()
|
||||
if iter.head != 4 {
|
||||
t.Fatal(iter.head)
|
||||
|
Reference in New Issue
Block a user