From 64f75f103408b5cfd94d1aacf400e7f9ce3fe58a Mon Sep 17 00:00:00 2001 From: Brad Fitzpatrick Date: Tue, 8 Mar 2011 09:58:18 -0800 Subject: [PATCH] strings: better benchmark names; add BenchmarkIndex R=dsymonds CC=golang-dev https://golang.org/cl/4264052 --- src/pkg/strings/strings_test.go | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/pkg/strings/strings_test.go b/src/pkg/strings/strings_test.go index b218c7a2ab..41e398782e 100644 --- a/src/pkg/strings/strings_test.go +++ b/src/pkg/strings/strings_test.go @@ -138,24 +138,36 @@ func TestIndexRune(t *testing.T) { } } +const benchmarkString = "some_text=some☺value" + func BenchmarkIndexRune(b *testing.B) { - if got := IndexRune("some_text=some☺value", '☺'); got != 14 { + if got := IndexRune(benchmarkString, '☺'); got != 14 { panic("wrong index: got=" + strconv.Itoa(got)) } for i := 0; i < b.N; i++ { - IndexRune("some_text=some☺value", '☺') + IndexRune(benchmarkString, '☺') } } -func BenchmarkIndexByte(b *testing.B) { - if got := IndexRune("some_text=some☺value", 'v'); got != 17 { +func BenchmarkIndexRuneFastPath(b *testing.B) { + if got := IndexRune(benchmarkString, 'v'); got != 17 { panic("wrong index: got=" + strconv.Itoa(got)) } for i := 0; i < b.N; i++ { - IndexRune("some_text=some☺value", 'v') + IndexRune(benchmarkString, 'v') } } +func BenchmarkIndex(b *testing.B) { + if got := Index(benchmarkString, "v"); got != 17 { + panic("wrong index: got=" + strconv.Itoa(got)) + } + for i := 0; i < b.N; i++ { + Index(benchmarkString, "v") + } +} + + type ExplodeTest struct { s string n int