| package runtime_test |
| |
| import ( |
| "testing" |
| ) |
| |
| func BenchmarkCompareStringEqual(b *testing.B) { |
| bytes := []byte("Hello Gophers!") |
| s1, s2 := string(bytes), string(bytes) |
| for i := 0; i < b.N; i++ { |
| if s1 != s2 { |
| b.Fatal("s1 != s2") |
| } |
| } |
| } |
| |
| func BenchmarkCompareStringIdentical(b *testing.B) { |
| s1 := "Hello Gophers!" |
| s2 := s1 |
| for i := 0; i < b.N; i++ { |
| if s1 != s2 { |
| b.Fatal("s1 != s2") |
| } |
| } |
| } |
| |
| func BenchmarkCompareStringSameLength(b *testing.B) { |
| s1 := "Hello Gophers!" |
| s2 := "Hello, Gophers" |
| for i := 0; i < b.N; i++ { |
| if s1 == s2 { |
| b.Fatal("s1 == s2") |
| } |
| } |
| } |
| |
| func BenchmarkCompareStringDifferentLength(b *testing.B) { |
| s1 := "Hello Gophers!" |
| s2 := "Hello, Gophers!" |
| for i := 0; i < b.N; i++ { |
| if s1 == s2 { |
| b.Fatal("s1 == s2") |
| } |
| } |
| } |