...
1 package ldcontext
2
3 import (
4 "testing"
5 )
6
7
8
9
10
11
12
13 func doUnmarshalBenchmark(b *testing.B, unmarshalFn func(*Context, []byte) error) {
14 for _, p := range makeBenchmarkUnmarshalTestParams() {
15 b.Run(p.Name, func(b *testing.B) {
16 for i := 0; i < b.N; i++ {
17 if benchmarkErr = unmarshalFn(&benchmarkContext, p.Data); benchmarkErr != nil {
18 b.Fatal(benchmarkErr)
19 }
20 }
21 })
22 }
23 }
24
25 func BenchmarkJSONUnmarshal(b *testing.B) {
26 doUnmarshalBenchmark(b, jsonUnmarshalTestFn)
27 }
28
29 func BenchmarkJSONStreamUnmarshal(b *testing.B) {
30 doUnmarshalBenchmark(b, jsonStreamUnmarshalTestFn)
31 }
32
View as plain text