diff options
author | Bjørn Erik Pedersen <[email protected]> | 2022-11-24 11:51:01 +0100 |
---|---|---|
committer | Bjørn Erik Pedersen <[email protected]> | 2022-11-24 12:04:44 +0100 |
commit | 34d1150d927adfba97399f70fb046fbfc5c8cd7a (patch) | |
tree | 1cfd31e97300e5c31d558842c58f40ccb0542b56 /markup | |
parent | 85e2ac1a4424fdde673b663c37043ece61212f0c (diff) | |
download | hugo-34d1150d927adfba97399f70fb046fbfc5c8cd7a.tar.gz hugo-34d1150d927adfba97399f70fb046fbfc5c8cd7a.zip |
markup/goldmark: Improve benchmark
Diffstat (limited to 'markup')
-rw-r--r-- | markup/goldmark/integration_test.go | 59 |
1 files changed, 31 insertions, 28 deletions
diff --git a/markup/goldmark/integration_test.go b/markup/goldmark/integration_test.go index e1d1445ee..84617b2c8 100644 --- a/markup/goldmark/integration_test.go +++ b/markup/goldmark/integration_test.go @@ -327,7 +327,7 @@ D. } func BenchmarkCodeblocks(b *testing.B) { - files := ` + filesTemplate := ` -- config.toml -- [markup] [markup.highlight] @@ -356,45 +356,48 @@ func main() { } FENCE -FENCEbash -#!/bin/bash -# Usage: Hello World Bash Shell Script Using Variables -# Author: Vivek Gite -# ------------------------------------------------- - -# Define bash shell variable called var -# Avoid spaces around the assignment operator (=) -var="Hello World" - -# print it -echo "$var" - -# Another way of printing it -printf "%s\n" "$var" +FENCEunknownlexer +hello FENCE ` content = strings.ReplaceAll(content, "FENCE", "```") for i := 1; i < 100; i++ { - files += fmt.Sprintf("\n-- content/posts/p%d.md --\n"+content, i+1) + filesTemplate += fmt.Sprintf("\n-- content/posts/p%d.md --\n"+content, i+1) } - cfg := hugolib.IntegrationTestConfig{ - T: b, - TxtarString: files, - } - builders := make([]*hugolib.IntegrationTestBuilder, b.N) + runBenchmark := func(files string, b *testing.B) { + cfg := hugolib.IntegrationTestConfig{ + T: b, + TxtarString: files, + } + builders := make([]*hugolib.IntegrationTestBuilder, b.N) - for i := range builders { - builders[i] = hugolib.NewIntegrationTestBuilder(cfg) - } + for i := range builders { + builders[i] = hugolib.NewIntegrationTestBuilder(cfg) + } - b.ResetTimer() + b.ResetTimer() - for i := 0; i < b.N; i++ { - builders[i].Build() + for i := 0; i < b.N; i++ { + builders[i].Build() + } } + + b.Run("Default", func(b *testing.B) { + runBenchmark(filesTemplate, b) + }) + + b.Run("Hook no higlight", func(b *testing.B) { + files := filesTemplate + ` +-- layouts/_default/_markup/render-codeblock.html -- +{{ .Inner }} +` + + runBenchmark(files, b) + }) + } // Iisse #8959 |