diff options
Diffstat (limited to 'hugolib/site_test.go')
-rw-r--r-- | hugolib/site_test.go | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/hugolib/site_test.go b/hugolib/site_test.go index 3868055e9..bf5f9d547 100644 --- a/hugolib/site_test.go +++ b/hugolib/site_test.go @@ -1105,3 +1105,33 @@ func TestSourceRelativeLinkFileing(t *testing.T) { } } } + +func BenchmarkGetPage(b *testing.B) { + var ( + cfg, fs = newTestCfg() + ) + + for i := 0; i < 10; i++ { + for j := 0; j < 100; j++ { + writeSource(b, fs, filepath.Join("content", fmt.Sprintf("sect%d", i), fmt.Sprintf("page%d.md", j)), "CONTENT") + } + } + + s := buildSingleSite(b, deps.DepsCfg{Fs: fs, Cfg: cfg}, BuildCfg{SkipRender: true}) + + b.ResetTimer() + for i := 0; i < b.N; i++ { + home := s.getPage(KindHome) + if home == nil { + b.Fatal("Home is nil") + } + + for i := 0; i < 10; i++ { + sect := fmt.Sprintf("sect%d", i) + p := s.getPage(KindSection, sect) + if p == nil { + b.Fatal(fmt.Sprintf("Section %q is nil", sect)) + } + } + } +} |