This repository has been archived by the owner on Jun 6, 2024. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
perf(httpClient): compare strings with
strings.EqualFold
(#962)
Comparing two strings to the same case with `strings.ToLower` is more computational expensive than `strings.EqualFold`. Sample benchmark: func BenchmarkToLower(b *testing.B) { for i := 0; i < b.N; i++ { if strings.ToLower("CONTENT-TYPE") != strings.ToLower("content-type") { b.Fail() } } } func BenchmarkEqualFold(b *testing.B) { for i := 0; i < b.N; i++ { if !strings.EqualFold("CONTENT-TYPE", "content-type") { b.Fail() } } } goos: linux goarch: amd64 pkg: github.com/datreeio/datree/pkg/httpClient cpu: AMD Ryzen 7 PRO 4750U with Radeon Graphics BenchmarkToLower-16 8183317 192.1 ns/op 16 B/op 1 allocs/op BenchmarkEqualFold-16 82634701 12.92 ns/op 0 B/op 0 allocs/op PASS ok github.com/datreeio/datree/pkg/httpClient 4.181s Reference: https://staticcheck.dev/docs/checks/#SA6005 Signed-off-by: Eng Zer Jun <[email protected]>
- Loading branch information