aboutsummaryrefslogtreecommitdiff
path: root/header_timing_test.go
diff options
context:
space:
mode:
authorGravatar Aliaksandr Valialkin <valyala@gmail.com> 2015-11-30 20:25:39 +0200
committerGravatar Aliaksandr Valialkin <valyala@gmail.com> 2015-11-30 20:25:39 +0200
commita3b2aca075af579dacd924994627bd965700aea7 (patch)
treee8dc166d423d88995afd4b581824ec06b8b04555 /header_timing_test.go
parentgofmt (diff)
downloadfasthttp-a3b2aca075af579dacd924994627bd965700aea7.tar.gz
fasthttp-a3b2aca075af579dacd924994627bd965700aea7.tar.bz2
fasthttp-a3b2aca075af579dacd924994627bd965700aea7.zip
Added benchmarks for normalizeHeaderKey
Diffstat (limited to 'header_timing_test.go')
-rw-r--r--header_timing_test.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/header_timing_test.go b/header_timing_test.go
index 6b5c33a..3ef0a2a 100644
--- a/header_timing_test.go
+++ b/header_timing_test.go
@@ -119,3 +119,28 @@ func BenchmarkRequestHeaderPeekBytesNonCanonical(b *testing.B) {
}
})
}
+
+func BenchmarkNormalizeHeaderKeyCommonCase(b *testing.B) {
+ src := []byte("User-Agent-Host-Content-Type-Content-Length-Server")
+ benchmarkNormalizeHeaderKey(b, src)
+}
+
+func BenchmarkNormalizeHeaderKeyLowercase(b *testing.B) {
+ src := []byte("user-agent-host-content-type-content-length-server")
+ benchmarkNormalizeHeaderKey(b, src)
+}
+
+func BenchmarkNormalizeHeaderKeyUppercase(b *testing.B) {
+ src := []byte("USER-AGENT-HOST-CONTENT-TYPE-CONTENT-LENGTH-SERVER")
+ benchmarkNormalizeHeaderKey(b, src)
+}
+
+func benchmarkNormalizeHeaderKey(b *testing.B, src []byte) {
+ b.RunParallel(func(pb *testing.PB) {
+ buf := make([]byte, len(src))
+ for pb.Next() {
+ copy(buf, src)
+ normalizeHeaderKey(buf)
+ }
+ })
+}