Skip to content

Commit 0e6f757

Browse files
nes1983dsymonds
authored andcommitted
s2: Add benchmark for Rect decoding.
Signed-off-by: David Symonds <dsymonds@golang.org>
1 parent ef789b3 commit 0e6f757

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

s2/encode_test.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -308,3 +308,21 @@ func TestLoopEncodeDecode(t *testing.T) {
308308
}
309309
}
310310
}
311+
312+
func BenchmarkRectDecode(b *testing.B) {
313+
rect := RectFromCenterSize(LatLngFromDegrees(80, 170), LatLngFromDegrees(40, 60))
314+
var buf bytes.Buffer
315+
if err := rect.Encode(&buf); err != nil {
316+
b.Fatal(err)
317+
}
318+
encoded := buf.Bytes()
319+
b.ReportAllocs()
320+
b.SetBytes(int64(len(encoded)))
321+
b.ResetTimer()
322+
var out Rect
323+
for i := 0; i < b.N; i++ {
324+
if err := out.Decode(bytes.NewReader(encoded)); err != nil {
325+
b.Fatal(err)
326+
}
327+
}
328+
}

0 commit comments

Comments
 (0)