@@ -37,37 +37,35 @@ categories:
3737`
3838
3939func BenchmarkGetPage (b * testing.B ) {
40- var (
41- cfg , fs = newTestCfg ()
42- r = rand .New (rand .NewSource (time .Now ().UnixNano ()))
43- )
40+ cfg , fs := newTestCfg ()
4441
4542 configs , err := loadTestConfigFromProvider (cfg )
4643 if err != nil {
4744 b .Fatal (err )
4845 }
4946
50- for i := range 10 {
47+ const size = 10
48+
49+ for i := range size {
5150 for j := range 100 {
5251 writeSource (b , fs , filepath .Join ("content" , fmt .Sprintf ("sect%d" , i ), fmt .Sprintf ("page%d.md" , j )), "CONTENT" )
5352 }
5453 }
5554
5655 s := buildSingleSite (b , deps.DepsCfg {Fs : fs , Configs : configs }, BuildCfg {SkipRender : true })
5756
58- pagePaths := make ([]string , b .N )
59-
60- for i := 0 ; b .Loop (); i ++ {
61- pagePaths [i ] = fmt .Sprintf ("sect%d" , r .Intn (10 ))
57+ pagePaths := make ([]string , size )
58+ for i := range size {
59+ pagePaths [i ] = fmt .Sprintf ("sect%d" , i )
6260 }
6361
64- for i := 0 ; i < b . N ; i ++ {
62+ for i := 0 ; b . Loop () ; i ++ {
6563 home , _ := s .getPage (nil , "/" )
6664 if home == nil {
6765 b .Fatal ("Home is nil" )
6866 }
6967
70- p , _ := s .getPage (nil , pagePaths [i ])
68+ p , _ := s .getPage (nil , pagePaths [i % size ])
7169 if p == nil {
7270 b .Fatal ("Section is nil" )
7371 }
@@ -113,20 +111,21 @@ func TestBenchmarkGetPageRegular(t *testing.T) {
113111
114112func BenchmarkGetPageRegular (b * testing.B ) {
115113 r := rand .New (rand .NewSource (time .Now ().UnixNano ()))
114+ const size = 100
116115
117116 b .Run ("From root" , func (b * testing.B ) {
118117 s := createGetPageRegularBenchmarkSite (b )
119118 c := qt .New (b )
120119
121- pagePaths := make ([]string , b . N )
120+ pagePaths := make ([]string , size )
122121
123- for i := 0 ; i < b . N ; i ++ {
124- pagePaths [i ] = path .Join (fmt .Sprintf ("/sect%d" , r .Intn (10 )), fmt .Sprintf ("page%d.md" , r . Intn ( 100 ) ))
122+ for i := range size {
123+ pagePaths [i ] = path .Join (fmt .Sprintf ("/sect%d" , r .Intn (10 )), fmt .Sprintf ("page%d.md" , i ))
125124 }
126125
127126 b .ResetTimer ()
128- for i := 0 ; i < b . N ; i ++ {
129- page , _ := s .getPage (nil , pagePaths [i ])
127+ for i := 0 ; b . Loop () ; i ++ {
128+ page , _ := s .getPage (nil , pagePaths [i % size ])
130129 c .Assert (page , qt .Not (qt .IsNil ))
131130 }
132131 })
@@ -136,17 +135,15 @@ func BenchmarkGetPageRegular(b *testing.B) {
136135 c := qt .New (b )
137136 allPages := s .RegularPages ()
138137
139- pagePaths := make ([]string , b . N )
140- pages := make ([]page. Page , b . N )
138+ pagePaths := make ([]string , size )
139+ pages := allPages [: size ]
141140
142- for i := 0 ; i < b .N ; i ++ {
143- pagePaths [i ] = fmt .Sprintf ("page%d.md" , r .Intn (100 ))
144- pages [i ] = allPages [r .Intn (len (allPages )/ 3 )]
141+ for i := range size {
142+ pagePaths [i ] = fmt .Sprintf ("page%d.md" , i )
145143 }
146144
147- b .ResetTimer ()
148- for i := 0 ; i < b .N ; i ++ {
149- page , _ := s .getPage (pages [i ], pagePaths [i ])
145+ for i := 0 ; b .Loop (); i ++ {
146+ page , _ := s .getPage (pages [i % size ], pagePaths [i % size ])
150147 c .Assert (page , qt .Not (qt .IsNil ))
151148 }
152149 })
0 commit comments