...
1
16
17 package issue_test
18
19 import (
20 . `github.com/bytedance/sonic`
21 `io/ioutil`
22 `testing`
23
24 `github.com/stretchr/testify/require`
25 )
26
27 func benchmarkEncodeSonic(b *testing.B, data []byte) {
28 var xbook = map[string]interface{}{}
29 if err := Unmarshal(data, &xbook); err != nil {
30 b.Fatal(err)
31 }
32 if _, err := Marshal(&xbook); err != nil {
33 b.Fatal(err)
34 }
35 b.SetBytes(int64(len(data)))
36 b.ReportAllocs()
37 b.ResetTimer()
38 for i := 0; i < b.N; i++ {
39 _, _ = Marshal(&xbook)
40 }
41 }
42
43 func BenchmarkIssue16(b *testing.B) {
44 data, err := ioutil.ReadFile("../testdata/twitterescaped.json")
45 require.Nil(b, err)
46 benchmarkEncodeSonic(b, data)
47 }
View as plain text