]> git.maquefel.me Git - brevno-suite/hugo/commitdiff
all: Fix some benchmarks broken by modernize
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 6 Nov 2025 09:43:12 +0000 (10:43 +0100)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 6 Nov 2025 09:43:12 +0000 (10:43 +0100)
It's not possible to use `b.Loop()` when `b.N` is used to prepare test data.

See 264022a75a8e4d91d7461747eef4d06267cc519f
See #14107

16 files changed:
common/hreflect/helpers_test.go
common/hstrings/strings_test.go
compare/compare_strings_test.go
hugolib/cascade_test.go
hugolib/hugo_smoke_test.go
hugolib/pagecollections_test.go
hugolib/rebuild_test.go
hugolib/shortcode_test.go
hugolib/site_benchmark_new_test.go
hugolib/sitesmatrix/sitematrix_integration_test.go
identity/identity_test.go
markup/goldmark/goldmark_integration_test.go
markup/tableofcontents/tableofcontents_test.go
related/related_integration_test.go
resources/image_test.go
tpl/partials/partials_integration_test.go

index 9527fbb7d3d0f72f02ab5027b402aaaac93684f3..bd578650d330a95ed4d631cc8b0866cf798db4b8 100644 (file)
@@ -161,7 +161,7 @@ func BenchmarkIsContextType(b *testing.B) {
                }
 
                b.ResetTimer()
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        if !IsContextType(ctxs[i]) {
                                b.Fatal("not context")
                        }
index 205005785703c086a40982e623ef00962d14ace8..9eb3b04cb1d1148277c4849f5d53e5458b583ef6 100644 (file)
@@ -105,13 +105,13 @@ func BenchmarkUniqueStrings(b *testing.B) {
        b.Run("Reuse slice sorted", func(b *testing.B) {
                b.StopTimer()
                inputs := make([][]string, b.N)
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        inputc := make([]string, len(input))
                        copy(inputc, input)
                        inputs[i] = inputc
                }
                b.StartTimer()
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        inputc := inputs[i]
 
                        result := UniqueStringsSorted(inputc)
index 505eaa7a3fa46064b3f76c08e86d9726bff045e9..1a5bb0b1a115486013a2e61025856d0f7e468243 100644 (file)
@@ -67,12 +67,12 @@ func BenchmarkStringSort(b *testing.B) {
        prototype := []string{"b", "Bz", "zz", "ba", "αβδ αβδ αβδ", "A", "Ba", "ba", "nnnnasdfnnn", "AAgæåz", "αβδC"}
        b.Run("LessStrings", func(b *testing.B) {
                ss := make([][]string, b.N)
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        ss[i] = make([]string, len(prototype))
                        copy(ss[i], prototype)
                }
                b.ResetTimer()
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        sss := ss[i]
                        sort.Slice(sss, func(i, j int) bool {
                                return LessStrings(sss[i], sss[j])
index 659006a2c73a4267213eabbc9088479e7f141d6f..b592ee0f85333c2ec452da685cd8871fe14a85a2 100644 (file)
@@ -83,7 +83,7 @@ kind = '{section,term}'
 
                b.ResetTimer()
 
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        builders[i].Build()
                }
        })
index 9b4079dc974aa1c41ceb8a581a42deed6dd7f39c..f7c0562ed41fdaf6d67641518ad9372a4333334c 100644 (file)
@@ -749,7 +749,7 @@ func BenchmarkBaseline(b *testing.B) {
                builders[i] = NewIntegrationTestBuilder(cfg)
        }
 
-       for i := 0; b.Loop(); i++ {
+       for i := 0; i < b.N; i++ {
                builders[i].Build()
        }
 }
index 0ea757b1c2a318a3a24072a434b3c39c1813712c..94ae175b52f72caf9a8914ba16d525bbe599d0d1 100644 (file)
@@ -61,7 +61,7 @@ func BenchmarkGetPage(b *testing.B) {
                pagePaths[i] = fmt.Sprintf("sect%d", r.Intn(10))
        }
 
-       for i := 0; b.Loop(); i++ {
+       for i := 0; i < b.N; i++ {
                home, _ := s.getPage(nil, "/")
                if home == nil {
                        b.Fatal("Home is nil")
@@ -120,12 +120,12 @@ func BenchmarkGetPageRegular(b *testing.B) {
 
                pagePaths := make([]string, b.N)
 
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        pagePaths[i] = path.Join(fmt.Sprintf("/sect%d", r.Intn(10)), fmt.Sprintf("page%d.md", r.Intn(100)))
                }
 
                b.ResetTimer()
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        page, _ := s.getPage(nil, pagePaths[i])
                        c.Assert(page, qt.Not(qt.IsNil))
                }
@@ -139,13 +139,13 @@ func BenchmarkGetPageRegular(b *testing.B) {
                pagePaths := make([]string, b.N)
                pages := make([]page.Page, b.N)
 
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        pagePaths[i] = fmt.Sprintf("page%d.md", r.Intn(100))
                        pages[i] = allPages[r.Intn(len(allPages)/3)]
                }
 
                b.ResetTimer()
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        page, _ := s.getPage(pages[i], pagePaths[i])
                        c.Assert(page, qt.Not(qt.IsNil))
                }
index 53a3bef6ccc49fc16af7a0f5ec36abce922fcf0b..07317ae1c630f722fdc2f659e09b2f33ce813ccf 100644 (file)
@@ -1797,7 +1797,7 @@ func BenchmarkRebuildContentFileChange(b *testing.B) {
                builders[i].Build()
        }
 
-       for i := 0; b.Loop(); i++ {
+       for i := 0; i < b.N; i++ {
                bb := builders[i]
                bb.EditFileReplaceFunc("content/mysect/p123/index.md", func(s string) string {
                        return s + "... Edited"
index cf0a77f18e2f0232b1e8b2a8e45755d316f68b28..560e0b4c0c2151001b47f210331d8314cb975043 100644 (file)
@@ -100,7 +100,6 @@ title: "Shortcodes Galore!"
                {"closed without content", `{{< inner param1 >}}{{< / inner >}}`, regexpCheck("inner.*inner:{}")},
                {"inline", `{{< my.inline >}}Hi{{< /my.inline >}}`, regexpCheck("my.inline;inline:true;closing:true;inner:{Hi};")},
        } {
-
                t.Run(test.name, func(t *testing.T) {
                        t.Parallel()
                        c := qt.New(t)
@@ -342,7 +341,7 @@ title: "Markdown Shortcode"
                builders[i] = NewIntegrationTestBuilder(cfg)
        }
 
-       for i := 0; b.Loop(); i++ {
+       for i := 0; i < b.N; i++ {
                builders[i].Build()
        }
 }
@@ -715,7 +714,6 @@ TOC: {{ .TableOfContents }}
                                        )
                                }
                        })
-
        }
 }
 
index 75f53cbfdb353fc708dd31f049decfa5e93b9644..85fff472f8b2b7f50d9684c8050cc4e919713f2d 100644 (file)
@@ -504,7 +504,7 @@ func BenchmarkSiteNew(b *testing.B) {
                        }
                        b.Run(name, func(b *testing.B) {
                                sites := make([]*sitesBuilder, b.N)
-                               for i := 0; b.Loop(); i++ {
+                               for i := 0; i < b.N; i++ {
                                        sites[i] = bm.create(b)
                                        if edit {
                                                sites[i].Running()
index 3e93e8f96003fcc7ad1c5e1e7b273ff3eac5f651..9408a701d82b40ff02d37b4d7cd215fedc63d1d9 100644 (file)
@@ -1125,11 +1125,11 @@ func BenchmarkSitesMatrixContent(b *testing.B) {
                for _, multipleDimensions := range []bool{false, true} {
                        b.Run(fmt.Sprintf("n%d/md%t", numPages, multipleDimensions), func(b *testing.B) {
                                builders := make([]*hugolib.IntegrationTestBuilder, b.N)
-                               for i := 0; b.Loop(); i++ {
+                               for i := 0; i < b.N; i++ {
                                        builders[i] = newSitesMatrixContentBenchmarkBuilder(b, numPages, true, true)
                                }
                                b.ResetTimer()
-                               for i := 0; b.Loop(); i++ {
+                               for i := 0; i < b.N; i++ {
                                        builders[i].Build()
                                }
                        })
index a14ab615dd7cc0dda656186e415c256b70dbbc20..3b15b61b9b277e6dfc1a015e23d9a80818bca4c9 100644 (file)
@@ -46,7 +46,7 @@ func BenchmarkIdentityManager(b *testing.B) {
                im := identity.NewManager()
 
                b.ResetTimer()
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        im.AddIdentity(ids[i])
                }
 
index 8dc24593f306a7d61929dd03db94a76a79fdd3b3..8ea9dbde2462e6e1ae3453737dcb8d7dfa7e960a 100644 (file)
@@ -284,7 +284,7 @@ D.
                builders[i] = hugolib.NewIntegrationTestBuilder(cfg)
        }
 
-       for i := 0; b.Loop(); i++ {
+       for i := 0; i < b.N; i++ {
                builders[i].Build()
        }
 }
@@ -343,7 +343,7 @@ FENCE
 
                b.ResetTimer()
 
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        builders[i].Build()
                }
        }
index d851561503f06aa0a07356cae257657c2496f845..4b9b460a67013fa802ff37c79b805f87e702ebba 100644 (file)
@@ -218,7 +218,7 @@ func BenchmarkToc(b *testing.B) {
        b.Run("ToHTML", func(b *testing.B) {
                tocs := newTocs(b.N)
                b.ResetTimer()
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        toc := tocs[i]
                        toc.ToHTML(1, -1, false)
                }
index 18ec51f4afa980c34b0d92e2568dbf76387c09bb..5d558368e55dc665de1a5c51ab5d984d61edd40e 100644 (file)
@@ -181,7 +181,7 @@ keywords: ['k%d']
                builders[i] = hugolib.NewIntegrationTestBuilder(cfg)
        }
 
-       for i := 0; b.Loop(); i++ {
+       for i := 0; i < b.N; i++ {
                builders[i].Build()
        }
 }
index 9b9c69f49ced42fe00b5dd2d591d7fc8a8e8691a..e852d74013494bbd0c5747daa4694ac48437568f 100644 (file)
@@ -469,7 +469,7 @@ func BenchmarkImageExif(b *testing.B) {
        getImages := func(c *qt.C, b *testing.B, fs afero.Fs) []images.ImageResource {
                spec := newTestResourceSpec(specDescriptor{fs: fs, c: c})
                imgs := make([]images.ImageResource, b.N)
-               for i := 0; b.Loop(); i++ {
+               for i := 0; i < b.N; i++ {
                        imgs[i] = fetchResourceForSpec(spec, c, "sunset.jpg", strconv.Itoa(i)).(images.ImageResource)
                }
                return imgs
index 048ccbf90368f1c7d7a3effc0454bc4c80550dd9..3337a0ec777b055d021a59556edd8275c2351f57 100644 (file)
@@ -243,7 +243,7 @@ ABCDE
                builders[i] = hugolib.NewIntegrationTestBuilder(cfg)
        }
 
-       for i := 0; b.Loop(); i++ {
+       for i := 0; i < b.N; i++ {
                builders[i].Build()
        }
 }