identity: Add BenchmarkHashString - hugo - [fork] hugo port for 9front
HTML git clone git@git.drkhsh.at/hugo.git
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
DIR commit 3140e0b994e4108220afedc3de8eaf42ff216904
DIR parent 9989404d974e6ebb5a3874c392e56884def44173
HTML Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date: Tue, 30 Jul 2024 10:06:48 +0200
identity: Add BenchmarkHashString
Diffstat:
M identity/identityhash_test.go | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+), 0 deletions(-)
---
DIR diff --git a/identity/identityhash_test.go b/identity/identityhash_test.go
@@ -14,6 +14,9 @@
package identity
import (
+ "fmt"
+ "math"
+ "strings"
"testing"
qt "github.com/frankban/quicktest"
@@ -42,3 +45,24 @@ func (t tstKeyer) Key() string {
func (t tstKeyer) String() string {
return "key: " + t.key
}
+
+func BenchmarkHashString(b *testing.B) {
+ word := " hello "
+
+ var tests []string
+
+ for i := 1; i <= 5; i++ {
+ sentence := strings.Repeat(word, int(math.Pow(4, float64(i))))
+ tests = append(tests, sentence)
+ }
+
+ b.ResetTimer()
+
+ for _, test := range tests {
+ b.Run(fmt.Sprintf("n%d", len(test)), func(b *testing.B) {
+ for i := 0; i < b.N; i++ {
+ HashString(test)
+ }
+ })
+ }
+}